我需要能夠將放置在RadGridView行上的RadButton的Visibility屬性多邊形綁定到GridViewRow的「IsSelected」屬性和ViewModel上的Public屬性(稱爲「 OtherValue「)。這樣做的目的是僅顯示所選行上的[Delete]按鈕,但也可以通過基於特定業務規則的ViewModel中的自定義代碼覆蓋此按鈕。RadGridViewRow上RadButton的多重綁定可見性屬性
關於multiconverter綁定語法的任何建議?我目前有以下幾種:
我需要能夠將放置在RadGridView行上的RadButton的Visibility屬性多邊形綁定到GridViewRow的「IsSelected」屬性和ViewModel上的Public屬性(稱爲「 OtherValue「)。這樣做的目的是僅顯示所選行上的[Delete]按鈕,但也可以通過基於特定業務規則的ViewModel中的自定義代碼覆蓋此按鈕。RadGridViewRow上RadButton的多重綁定可見性屬性
關於multiconverter綁定語法的任何建議?我目前有以下幾種:
警告:我從來沒有使用任何Telerik控件。這個答案很可能是右ISH而不是死在錢上,而是應該有希望給你一些概念:
<DataTemplate>
<telerik:RadButton Width="70" Command="telerik:RadGridViewCommands.Delete" CommandParameter="{Binding}" Content="Delete">
<telerik:RadButton.Visibility>
<MultiBinding Converter="{StaticResource BooleanToVisibilityMultiValueConverter}">
<Binding ElementName="MyRadGridView", Path="Rows[0].IsSelected" />
<Binding Path="OtherValue", RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type telerik:RadGridView}} />
</MultiBinding>
</telerik:RadButton.Visibility>
</telerik:RadButton>
</DataTemplate>
你需要給你的RadGridView將取代MyRadGridView的名稱。據我可以從Telerik文檔中弄出來,你應該能夠使用Row的索引來綁定一個Row IsSelected屬性。
由於你的Button在DataTemplate中,我認爲你可能需要使用RelativeSource/FindAncestor回溯到你的DataContext。如果它不與RadGridView綁定,你可以試着用Window/UserControl /無論你的RadGridView被放置在哪裏。
有一個綁定到Telerik提供的GridViewRow.IsSelected的例子:http:// www .telerik.com/forums/isselected-property-of-a-gridrow。 – goobering 2015-03-30 20:58:34