在 Xamarin 中使用 ObervableCollection 的 ListView

我想根据可用选项显示按钮,但在实现它时遇到了一些麻烦。


如果有人可以看一下我的代码,那就太好了。


该系列很好,但没有显示任何按钮。


我已经尝试过以下操作:


public ObservableCollection<Button> shownButtons { get; set; } = new ObservableCollection<Button>();


private void ActionSelector(){

Button button;

            foreach (var serviceAction in basedata)

            {

                switch (serviceAction.ChangeType)

                {

                    case ServiceTodoChangeType.Accept:

                        button = new Button()

                        {

                            //Command = AcceptServiceCommand,

                            Text = Translations.Accept

                        };

                        shownButtons.Add(button);

                        break;

                    case ServiceTodoChangeType.ServicePause:

                        button = new Button()

                        {

                            Command = BreakCommand,

                            Text = Translations.ServicePause

                        };

                        shownButtons.Add(button);

                        break;

}

}

}

XAML:


<ListView ItemsSource="shownButtons">

                        <ListView.ItemTemplate>

                            <DataTemplate>

                                <ViewCell>

                                    <Button 

                                     Text="{Binding Text}" 

                                     Command="{Binding Command}">

                                    </Button>

                                </ViewCell>

                            </DataTemplate>

                        </ListView.ItemTemplate>

                    </ListView>


DIEA
浏览 93回答 1
1回答

郎朗坤

我收到错误...我忘记绑定源了。使固定:&nbsp;<ListView ItemsSource="{Binding shownButtons}">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <ListView.ItemTemplate>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <DataTemplate>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <ViewCell>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <Button&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Text="{Binding Text}"&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Command="{Binding Command}">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </Button>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </ViewCell>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </DataTemplate>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </ListView.ItemTemplate>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </ListView>
打开App,查看更多内容
随时随地看视频慕课网APP