代码之家  ›  专栏  ›  技术社区  ›  Zany

Xamarin c#ListView绑定不工作,等效的xaml正在工作

  •  0
  • Zany  · 技术社区  · 7 年前

    正如标题所述,我在xaml中的ListView绑定可以工作,但在c中不工作。

    Xaml

    <ListView ItemsSource="{Binding Records}">
                    <ListView.ItemTemplate>
                    <DataTemplate>
                        <TextCell Text="{Binding}">
    
                    </TextCell>
                           </DataTemplate>       
                    </ListView.ItemTemplate>
                </ListView>
    

    C#

                ListView lv = new ListView();
                lv.ItemsSource = ClassVMInstance.Records;
                var dt = new DataTemplate(typeof(TextCell));
                dt.SetBinding(TextCell.TextProperty, new Binding("Records"));
                lv.ItemTemplate = dt;
    

    是我的ViewModel的一个实例。

    ObservableCollection<string>

    xaml版本工作正常,它显示文本,但c#版本只有没有文本的空列表元素。

    (我在同一个页面上用两个listview测试了这一点,一个是xaml,另一个是c#,只有xaml显示文本,但c#版本只有相同数量的列表项,但为空)

    我相信itemssource属性在代码中工作正常,但绑定不正常。有人能帮我吗。

    1 回复  |  直到 7 年前
        1
  •  2
  •   Jason    7 年前

    dt.SetBinding(TextCell.TextProperty, new Binding("."));