我正在WPF項目上工作,我的意圖是讓兩個特定的RadioButton改變另一個指定組件的屬性。但現在,我只是想在RadioButton中存儲一個String。WPF - 依賴屬性錯誤
對於這一點,我創建了一個行爲類:
public class AdjustBehavior : Behavior<RadioButton>
{
使用這個屬性:
public static DependencyProperty AdjustLabelContentProperty =
DependencyProperty.RegisterAttached("LabelContent", typeof(String), typeof(AdjustBehavior),
new FrameworkPropertyMetadata(null,
FrameworkPropertyMetadataOptions.Inherits));
而且這些getter和setter方法:
public static String GetLabelContent(RadioButton tb)
{
return (String)tb.GetValue(AdjustLabelContentProperty);
}
public static void SetLabelContent(RadioButton tb, String value)
{
tb.SetValue(AdjustLabelContentProperty, value);
}
在XAML側,我這樣做:
<RadioButton Content="Banana" Height="16" HorizontalAlignment="Left" Margin="30,216,0,0" Name="radioButton1" VerticalAlignment="Top" GroupName="a" IsThreeState="False" IsChecked="True" Checked="radioButton1_Checked" >
<int:Interaction.Behaviors>
<i:AdjustBehavior LabelContent="Apple" />
</int:Interaction.Behaviors>
</RadioButton>
其中int:是Interaction.Behaviors的命名空間,i:是AdjustBehavior類的命名空間。但是,每當我開始我的應用程序,LabelContent被設置爲null。爲什麼?
我沒有發佈我的行爲類的其餘部分,因爲我認爲它沒有關係,但我會做必要的。
在此先感謝。
克拉克
有道理,非常感謝!現在正在工作 – 2010-07-01 20:48:00