我正在開發一個自定義的WPF控件(「多選擇器」)。我給我的用戶ItemsSource
屬性結合的目的,但在內部我使用ItemWrappers收集這樣的:複雜的自定義控件和屬性可見性
<UserControl x:Class="TFSControls.MultiSelectorControl.MultiSelectorControl">
<ItemsControl Name="ItemsPresenter" ItemsSource="{Binding ItemWrappers}">
...
</ItemsControl>
</UserControl>
的問題是,爲了這種結合工作ItemWrappers財產必須是公開的。 我會很高興與內部,因爲控制坐在自己的大會。
實現此目的的最簡單方法是什麼?
我知道的唯一解決方案是在我的程序集中子類ItemsControl,但這看起來不正確 - 我不需要自定義行爲,只是希望此屬性被內部/保護。
你想說的是,你想要一些集合屬性作爲公開的但不是'ItemWrappers'公開的。正確? –
我希望ItemWrappers是內部的,並且能夠綁定到它內部我的控件,我正在使用ItemsControl(如上所示)。其他屬性(ItemsSource)在這裏並不重要,只是說我有其他公共屬性供我的用戶綁定。 即控制應該像這樣使用: ' ' –
kubal5003
所以在那種情況下,爲什麼不能聲明你的'ItemsWrapper'屬性作爲私有依賴項屬性Key(即註冊爲只讀屬性的依賴屬性)呢? –