BindtoObsevableCollectionnotworkinginWINUI3app
创始人
2024-12-18 03:00:22
0

在WINUI3应用程序中,将数据绑定到ObservableCollection可能无法正常工作。这是由于ObservableCollection的实现方式与WINUI3的新UI元素库不兼容所致。为了解决这个问题,可以尝试使用XAML Behaviors库中的DataBind库。以下是一个示例代码:

XAML: interactivity:Interaction.Behaviors

C#: public class MainViewModel : INotifyPropertyChanged { public MainViewModel() { Items = new ObservableCollection(); }

private ObservableCollection _items;
public ObservableCollection Items
{
    get { return _items; }
    set { SetProperty(ref _items, value); }
}

// other properties and methods omitted for brevity

}

public class DataBindBehavior : Behavior { public static readonly DependencyProperty BindingProperty = DependencyProperty.Register(nameof(Binding), typeof(object), typeof(DataBindBehavior), new PropertyMetadata(default(object), BindingChanged));

public object Binding
{
    get { return GetValue(BindingProperty); }
    set { SetValue(BindingProperty, value); }
}

private static void BindingChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
    var behavior = (DataBindBehavior)d;
    if (behavior.AssociatedObject != null)
    {
        if (e.NewValue != null)
        {
            var binding = new Binding
            {
                Path = new PropertyPath("DataContext." + e.NewValue.ToString()),
                Mode = BindingMode.OneWay
            };
            behavior.AssociatedObject.SetBinding(ListViewBase.ItemsSourceProperty, binding);
        }
        else
        {
            behavior.AssociatedObject.ClearValue(ListViewBase.ItemsSourceProperty);
        }
    }
}

}

相关内容

热门资讯

八分钟了解!欢聚斗地主水鱼怎么... 八分钟了解!欢聚斗地主水鱼怎么提高胜率,老友广东麻将助赢神器,教你攻略(有挂揭秘)1、八分钟了解!欢...
揭秘关于!小吆干瞪眼有挂吗(辅... 揭秘关于!小吆干瞪眼有挂吗(辅助挂)一贯有挂(2022已更新)(哔哩哔哩);小吆干瞪眼有挂吗辅助器中...
我来教教大家!AGPoker有... 我来教教大家!AGPoker有没有挂(辅助挂)一直存在有挂(2021已更新)(哔哩哔哩);运AGPo...
4分钟了解!微信天天斗地主有挂... 4分钟了解!微信天天斗地主有挂的吗,边锋斗地主有猫腻吗,软件教程(有挂科普);微信天天斗地主有挂的吗...
我来教大家!微乐有辅助挂是真的... 我来教大家!微乐有辅助挂是真的吗(透视辅助)一直存在有挂(2023已更新)(哔哩哔哩);该软件可以轻...
1分钟了解!白金岛能开挂吗,乐... 1分钟了解!白金岛能开挂吗,乐享牛牛吗,攻略教程(有挂神器)1分钟了解!白金岛能开挂吗,乐享牛牛吗,...
终于清楚!微友辅助器(辅助挂)... 终于清楚!微友辅助器(辅助挂)一贯真的是有挂(2021已更新)(哔哩哔哩)1、微友辅助器ai辅助优化...
1分钟了解!心悦填大坑助赢神器... 1分钟了解!心悦填大坑助赢神器购买,衡阳丫丫字牌有挂吗,德州论坛(有挂攻略)1、1分钟了解!心悦填大...
一起来讨论!哈灵辅助器怎么使用... 一起来讨论!哈灵辅助器怎么使用(透视)其实是真的有挂(2020已更新)(哔哩哔哩)小薇(透视辅助)致...
四分钟了解!新道游大厅怎么开辅... 四分钟了解!新道游大厅怎么开辅助,钱塘十三水辅助器怎么安装,爆料教程(有挂插件)一、钱塘十三水辅助器...