Bu yüzden, daha iyi bir şekilde bakmak istediğim bir WinForm projesinden basit bir UDP sohbet uygulamasına sahibim, bu yüzden bunu WPF'de yeniden yapıyorum. Ben kolayca ListItem içinde 2 veya daha fazla TextBlocks koyabilirsiniz fark, ben, her sohbetin son mesaj görüntüleyebilir istedim şöyle:ListBox öğesinin içindeki TextBlock metnini nasıl güncellerim?
Ama o TextBlocks düzenleme hakkında fikrim yok :(Ben edebi sadece WPF ile başladı, ben sadece bir kopya yapılmış, ancak bu yüzden, ben bile bu konuda aramak için nasıl bilmiyorum bahse İşte
özel ListBox:.<ListBox x:Name="myList" HorizontalAlignment="Left" Width="264" ScrollViewer.VerticalScrollBarVisibility="Hidden" ScrollViewer.HorizontalScrollBarVisibility="Disabled" BorderThickness="0,1,1,0" MouseLeftButtonUp="myList_MouseLeftButtonUp" Margin="0,25,0,0">
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderBrush="LightGray" BorderThickness="0,0,0,1" Width="250">
<DockPanel Margin="0,7">
<Ellipse Name="ellipse" Margin="5" DockPanel.Dock="Left" Style="{DynamicResource elstyle}">
</Ellipse>
<TextBlock Text="{Binding Name}" DockPanel.Dock="Top" Margin="0,0,0,7" FontWeight="Bold" MaxWidth="250"></TextBlock>
<TextBlock Text="{Binding ID}" DockPanel.Dock="Top" Visibility="Hidden" FontSize="1.333"></TextBlock>
<TextBlock x:Name="last_message" Text="{Binding LastMessage}" DockPanel.Dock="Bottom" MaxWidth="250"></TextBlock>
</DockPanel>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
'daki bağlı özelliği güncelleyecektir. _ "Bu TextBlock'lara nasıl hitap edeceğiniz" ile ne demek istiyorsunuz? _? TextBlock'larınız iyi görünüyor. Ürün görünüm modeliniz neye benziyor? ** public ** 'Name',' ID' ve 'LastMessage' ** properties ** var mı? – dkozl
Üzgünüz, onları nasıl düzenleyeceğimi kastediyorum. İstemcinin bir tane aldığı her seferinde son mesajı eklemek istiyorum. Örneğin böyle bir şey: 'ListBox.Items [0] .last_message.text =" Merhaba, bu Zalma "; – Caddaile
Onları düzenlemezsiniz. Görünüm modelinize bağlı 'LastMessage' özelliğini değiştirirseniz ve bu durum ['INotifyPropertyChanged.PropertyChanged'] 'i yükseltirse (https://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged.propertychanged (v = vs) .110) .aspx) olayı UI tarafından alınacak ve 'TextBlock' yenilenecek. Görünüm modeliniz nasıl görünür? – dkozl