wpf - 如何使用带有标记扩展名的Path,ElementName

时间:2011-01-31 09:33:10

标签: wpf silverlight wpf-controls binding wpfdatagrid

我正在使用this markup extension

<DataGridTextColumn Header="Something" 
                    Binding="{controls:SwitchBinding Something, Yes, No}" />

一切正常,但现在我需要为Binding指定路径和元素名称。(甚至可能是“模式”)

我没有成功尝试过:

Binding="{controls:SwitchBinding {Binding Path=SelectedItem.SystemDefined, ElementName=dgrdStatementBlocks}, Yes, No}"

有人可以指出我这样做的正确方法吗?

感谢。

1 个答案:

答案 0 :(得分:1)

你为什么要这样做?

Binding="{controls:SwitchBinding {Binding Path=SelectedItem.SystemDefined, ElementName=dgrdStatementBlocks}, Yes, No}

尝试以下方法:

Binding="{controls:SwitchBinding Path=SelectedItem.SystemDefined, ElementName=dgrdStatementBlocks, ValueIfTrue=Yes, ValueIfFalse=No}

编辑:

我在示例WPF(.Net4)(非Silverlight)应用程序中尝试了此操作。以下工作:

<CheckBox Name="CheckBox1"
            IsChecked="True" />
<TextBlock Name="TextBlock1"
            Text="{local:SwitchBinding ElementName=CheckBox1, Path=IsChecked, ValueIfTrue=Yes, ValueIfFalse=No}" />