3
我剛開始使用Silverlight。我想在UI上顯示消息列表,但數據綁定不適合我。Silverlight 2.0 - 將域對象數據綁定到UserControl
我有一個消息類別:
public class Message
{
public string Text { get; set; }
...
}
我有一個消息依賴屬性的消息顯示的Silverlight用戶控制:
public partial class MessageDisplay : UserControl
{
public static readonly DependencyProperty MessageProperty =
DependencyProperty.Register("Message", typeof(Message),
typeof(MessageDisplay), null);
public MessageDisplay()
{
InitializeComponent();
}
public Message Message
{
get
{
return (Message)this.GetValue(MessageProperty);
}
set
{
this.SetValue(MessageProperty, value);
this.DisplayMessage(value);
}
}
private void DisplayMessage(Message message)
{
if (message == null)
{
this.MessageDisplayText.Text = string.Empty;
}
else
{
this.MessageDisplayText.Text = message.Text;
}
}
}
}
然後,在主控制XAML我有
<ListBox x:Name="MessagesList" Style="{StaticResource MessagesListBoxStyle}">
<ListBox.ItemTemplate>
<DataTemplate>
<Silverbox:MessageDisplay Message="{Binding}"></Silverbox:MessageDisplay>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox
我綁定在control.xaml.cs代碼:
this.MessagesList.SelectedIndex = -1;
this.MessagesList.ItemsSource = this.messages;
數據綁定不提供任何錯誤,它似乎有列表中的項目的正確數目,但在MessageDisplay的Message屬性settor一個斷點從未打過,並且該消息永遠不會正確顯示。
我錯過了什麼?
這就行了,謝謝。 – Anthony 2008-11-30 16:22:49