gpt4 book ai didi

wpf - 让数据绑定(bind) WPF Listbox 生成子类 ListboxItems

转载 作者:行者123 更新时间:2023-12-04 07:02:46 25 4
gpt4 key购买 nike

我想让我的 WPF Listbox(数据绑定(bind))生成子类 ListboxItems 而不是常规的 ListboxItems。在这种情况下,DataTemplate 是不够的,因为我需要子类 ListBoxItems 的一些自定义属性。

有没有办法让 ListBox 为绑定(bind)数据生成 mySubClassedListBoxItem 项?

谢谢,
巴特

最佳答案

您需要创建自己的 ListBox 子类,以便您可以覆盖创建容器的方法,例如

public class MyListBox : ListBox
{
public MyListBox()
{
// Should get the default style & template since styles are not inherited
Style = FindResource(typeof(ListBox)) as Style;
}

protected override DependencyObject GetContainerForItemOverride()
{
var container = new MyListBoxItem();
return container;
}
}

public class MyListBoxItem : ListBoxItem
{
public MyListBoxItem()
{
Style = FindResource(typeof(ListBoxItem)) as Style;
// To easily see that these are custom ListBoxItems:
// TextElement.SetForeground(this, Brushes.Red);
}

// ...
}

关于wpf - 让数据绑定(bind) WPF Listbox 生成子类 ListboxItems,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1581934/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com