我很好奇,因爲我正在學習有關WPF綁定的更多信息,您是否需要將數據上下文設置爲簡單地設置單個屬性的{binding path =}?我只是好奇,因爲我從背後的MVVM代碼示例中學習,看起來我有一種情況,我想綁定到不在ViewModel的數據上下文中的東西,我更喜歡中間類,而不是代碼後面,以便在捆綁。那麼我可以有另一個我引用第二個數據上下文或類似的類嗎?或者我可以設置資源鍵並以某種方式引用該類?如果可能的話,我最終想要在一個單獨的類中訪問一個屬性。將屬性從類直接綁定到XAML
EG:
<Window x:Class="WPFTestBinding.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:da="clr-namespace:WPFTestBinding.DataAccess"
xmlns:main="clr-namespace:WPFTestBinding"
Title="MainWindow" Height="350" Width="525">
<Grid>
<StackPanel>
<Label Content="Here we go: "/>
<TextBox x:Name="testtext" />
<Label Height="50" />
<!-- CODE BELOW WILL NOT WORK -->
<TextBox Text="{Binding Path=TestID}" x:Name="testtext2" />
</StackPanel>
</Grid>
</Window>
我知道我可以在代碼中設置一個文本框的背後的價值和它的屬性的例子的作品,但它不會綁定。有沒有辦法做到簡單的綁定動態從類的屬性?我還沒有找到一個簡單的例子,這是一個簡單的例子,我正在網上搜索,而在學習綁定時,大多數例子都是非常強烈的設置數據上下文集或非常簡單的靜態資源例子。我只是好奇你是否可以使用{Binding Path =}並擴展一些其他屬性以便在類中獲取代碼。
休息的代碼非常簡單:
namespace WPFTestBinding.DataAccess
{
class Test
{
public string TestID { get { return "This is my test"; } }
}
}
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
DataAccess.Test t = new Test();
testtext.Text = t.TestID; // code behind works easily
}
}
這正是我一直在尋找。我知道有一個簡單的方法來擴展我缺少的XAML中的名稱空間。 – djangojazz
@ kusi581,你也解決了我的問題。 –