2012-02-29 45 views
0

我動態創建的控件是一個單選按鈕,我試圖根據在代碼隱藏中創建的單選按鈕的IsChecked屬性來控制超鏈接按鈕的可見性。數據綁定 - 在XAML中,如何將數據綁定到動態創建的控件的屬性?

在我的XAML文件:

<HyperlinkButton Visibility="{Binding IsChecked, ElementName=tempRadio, Converter={StaticResource visibilityConvert}}" Content="Insert Record" Click="addRecord" Background="Aqua" Foreground="White"></HyperlinkButton> 

顯然,我不認爲我應該在這種情況下使用的ElementName,因爲它僅適用於XAML創建的控件。

在我的C#文件:

public RadioButton tempRadio; 

    ... 

回答

0

我將開始與此:

第一設置綁定目標上的超級鏈接

hyperlinkBut​​ton.BindingTarget = tempRadio.IsChecked;

然後設置綁定: hyperlinkBut​​ton.SetBinding(hyperlinkBut​​ton.BindingTarget,CreateValueBinding()); ();

private Binding CreateValueBinding() var valueBinding = new Binding(); valueBinding.Mode = BindingMode.TwoWay; valueBinding.NotifyOnValidationError = true; valueBinding.ValidatesOnExceptions = true; valueBinding.UpdateSourceTrigger = UpdateSourceTrigger.Explicit; valueBinding.Path = new PropertyPath(this.DataMemberBinding.Path.Path); 返回值Binding; }

+0

但有沒有辦法從XAML做到這一點,以引用動態創建的單選按鈕。謝謝 – 2012-03-01 02:01:03

+0

我不這麼認爲,我認爲如果你在代碼後面創建一些東西,其餘的也必須連接在那裏。如果你需要在XAML中擁有你的收音機,那麼你可能想用Visibility.Collapsed創建它。當沒有代碼提供上下文時,這是非常困難的。 – bperreault 2012-03-01 02:02:37

相關問題