2013-05-03 139 views
2

我有一個名爲AlarmSettings的用戶控件,用戶控件的資源字典包含我的自定義類「AlarmClock」的一個實例,AlarmClock具有名爲AlarmName的依賴項屬性,爲什麼我得到錯誤錯誤「成員」AlarmName「未被識別或無法訪問。「爲什麼我的DependencyProperty無法訪問?

這是我的用戶控件:

<UserControl x:Class="ChangeSet.AlarmSettings" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit" 
xmlns:alarm="clr-namespace:ChangeSet.Alarm;assembly=ChangeSet" 
mc:Ignorable="d" 
FontFamily="{StaticResource PhoneFontFamilyNormal}" 
FontSize="{StaticResource PhoneFontSizeNormal}" 
Foreground="{StaticResource PhoneForegroundBrush}" 
d:DesignHeight="480" d:DesignWidth="480" > 

<UserControl.Resources>  
    <alarm:AlarmClock x:Key="alarmClock" AlarmName="{Binding ElementName=AlarmSettings, Path=Name}"/> 
</UserControl.Resources> 

這是我AlarmClock類:

public class AlarmClock: DependencyObject 
{ 

    public AlarmClock() 
    { 
     PopulateSettingsOptions(); 
    } 

    public string AlarmName 
    { 
     get { return GetValue(AlarmNameProperty).ToString(); } 
     set { SetValue(AlarmNameProperty, value); } 
    } 

    public static readonly DependencyProperty AlarmNameProperty = 
     DependencyProperty.Register("AlarmName", typeof(string), typeof(AlarmClock), new PropertyMetadata("DefaultAlarm")); 

注:我想給AlarmName綁定到AlarmSettings用戶控件的名稱屬性但即使我刪除綁定並嘗試將AlarmName依賴項屬性設置爲一個字符串,我仍然會得到相同的錯誤。

+0

你設法解決這個錯誤嗎? – 2014-03-07 10:23:41

+0

不,從來沒有解決和項目已被放棄 – 2014-03-07 21:38:00

回答

0

什麼是你的userControl的DataContext

向您的類alarmClock添加一個空的構造函數。

+0

我沒有設置數據上下文,我試圖只是綁定,在XAML中,它的用戶控件的名稱屬性,我可以做到這一點? 我有一個AlarmClock類的無參數構造函數,雖然它不是空的,只是沒有在我的例子中顯示它,已經更新它。 – 2013-05-03 23:28:23

0

從Visual Studio中的XAML訪問依賴項屬性時,我遇到了同樣的問題。我剛剛重建了這個項目。

1

我已經將我的項目從一個位置移動到另一個位置,並在再次打開它時獲得與依賴項屬性相同的問題。我只是重建它,錯誤得到解決。

相關問題