传递CustomControl中的对象

时间:2012-12-05 09:01:30

标签: wpf user-controls wpf-controls itemscontrol

我正在开发自定义控件,我想知道将ItemsControl中的某些自定义属性传递给ItemsContainer的最佳方法是什么。这些属性是很少的自定义值ItemsContainer应该能够使用。

创建自定义控件时有人遇到过同样的问题吗?什么是在代码中解决这个问题最常用的方法?

我认为使用DataTriggers或从ItemsContainer的ControlTemplate绑定到RelativeSource是不是最好的方法。

是否有对象 - 方式解决方法?

2 个答案:

答案 0 :(得分:0)

如果您不想使用DataTrigger或相对绑定,则可以创建自己的ItemsControlItemsControl容器(通过继承ListBox和{{1例如,然后通过覆盖ItemsControl.GetContainerForItemOverride Method来实例化具有特定属性的容器,最后将自定义控件属性绑定到Container上定义的属性。

话虽如此,使用ListBoxItem并在ViewModel上管理这些属性并没有错。

答案 1 :(得分:0)

我认为Dependency Properties就是你所需要的。在您的使用控件中定义一些,并使用绑定在xaml中设置它们。例如。