2015-11-13 39 views
1

類似問題的答案對我沒有幫助。我正在嘗試使用我在別處找到的附加屬性。我在我的XAML以下聲明:命名空間中不存在附加屬性

xmlns:SAS ="clr-namespace:WPFLocalDataConnect.Tools.SelectAllSample" 

這在視圖中的一個文本框被用作顯示:

 TextBox Text="{Binding Value}" SAS:TextBoxAttach.TextBoxController="{Binding}" 

我收到以下錯誤:

The property 'TextBoxAttach.TextBoxController' does not exist in XML namespace 'clr-namespace:WPFLocalDataConnect.Tools'. 
The name "TextBoxAttach" does not exist in the namespace "clr-namespace:WPFLocalDataConnect.Tools.SelectAllSample". 

名稱TextBoxAttached存儲在項目WPF Local Data Connect的Tools文件夾中的SelectAllSample命名空間中。什麼導致了這些錯誤?它看起來像文件位置正確聲明。

+0

這是bug.Try刪除命名空間,並給出相同的命名空間。然後從XAML更改,然後重新創建它。最後重建您的項目,它會糾正它。我喜歡這樣做 –

+0

@Suren是的,它現在工作很好,這個錯誤怎麼還存在。我記得在vs2012有這個問題,現在使用vs2015,不夠好mircosoft大聲笑 –

+0

他們不知道這個bug :) –

回答

0

這不是一個錯誤,正如在問題的評論中暗示的那樣。

然而,TextBoxController必須命名WPFLocalDataConnect.Tools.SelectAllSample是附加屬性的一類TextBoxAttach

namespace WPFLocalDataConnect.Tools.SelectAllSample 
{ 
    public static readonly DependencyProperty TextBoxControllerProperty = 
     DependencyProperty.RegisterAttached("TextBoxController", ...); 

    // static getter and setter methods 
} 

項目的文件夾結構是無關緊要的。

+0

這是我在錯誤之前和之後佈局的確切方式,我只需重新鍵入名稱空間和類名。我已經有了以上。你確定它不是一個錯誤?除了重新輸入完​​全相同的東西外,我沒有改變任何東西。然後我重建,一切正常。我認爲你的斷言可能是錯誤的。 –

+0

我測試過了,它適用於我(對我而言)。再次,它沒有任何東西與文件位置或項目文件夾。您只需在XAML中使用正確的名稱空間。 – Clemens

+0

謝謝,但它也適用於我,就像我說的,我沒有改變任何加載項目時出現的錯誤。 –

相關問題