說我有XAML像WPF:綁定無法正常工作
<TabControl Grid.Row="1" Grid.Column="2" ItemsSource="{Binding Tabs}" IsSynchronizedWithCurrentItem="True">
<TabControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding TabTitle}" />
</DataTemplate>
</TabControl.ItemTemplate>
<TabControl.ContentTemplate>
<DataTemplate>
<local:UserControl1 Text="{Binding Text}" />
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>
我要問哪裏的TabTitle
和Text
性從何而來?我認爲應該來自Tabs
的每一項權利?說標籤是ObservableCollection<TabViewModel>
TabTitle
& Text
應該從TabViewModel
屬性權利。但在某種程度上似乎是正確的。 TabTitle
正確填充,而Text
不正確。
Text
在UserControl1
如下
public string Text
{
get { return (string)GetValue(TextProperty); }
set { SetValue(TextProperty, value); }
}
public static readonly DependencyProperty TextProperty =
DependencyProperty.Register("Text", typeof(string), typeof(UserControl1), new UIPropertyMetadata(""));
當我有沒有綁定到ObservableCollection<TabViewModel>
綁定選項卡工作正常
<TabControl Grid.Row="1" Grid.Column="1">
<TabItem Header="Tab 1">
<local:UserControl1 Text="Hello" />
</TabItem>
<TabItem Header="Tab 2">
<local:UserControl1 Text="World" />
</TabItem>
</TabControl>
檢查輸出窗口是否存在綁定錯誤 – benPearce 2010-10-31 04:59:22
您是否使用某個值初始化TabViewModel.Text?或者它是空的?另外,您的TabViewModel是否實現INotifyPropertyChanged接口? – Nawaz 2010-12-01 06:19:10