Bir Etkinliği Silverlight DataTemplate'de bağlamak mümkün mü? Eğer öyleyse, bunu yapmanın en iyi yolu nedir? SonraBir Etkinliği Silverlight DataTemplate'de bağlamak mümkün mü?
<UserControl.Resources>
<DataTemplate x:Key="MyDataTemplate" >
<Grid>
<Button Content="{Binding ButtonText}" Margin="4" />
</Grid>
</DataTemplate>
</UserControl.Resources>
, böyle bir liste kutusu ItemTemplate uygulamak: Örneğin
, böyle İçinde Düğme sahip bir DataTemplate oluşturduk demek<Grid x:Name="LayoutRoot" Background="White">
<ListBox x:Name="lbListBox" ItemTemplate="{StaticResource MyDataTemplate}" />
</Grid>
sınıfın nesneleri listeye listbox en ItemSource ayarlarsanız:
public class MyDataClass
{
public string ButtonText{ get; set; }
}
Nasıl o zaman inci yakalamak do e düğmesi, listedeki DataTemplate'den her düğmeyi tıklar mı? Böyle, "MyButtonClass" bir yönteme tıklayın olayı bağlamak bağlayıcı kullanabilir miyim:
<UserControl.Resources>
<DataTemplate x:Key="MyDataTemplate" >
<Grid>
<Button Click="{Binding OnItemButtonClick}" Content="{Binding ButtonText}" Margin="4" />
</Grid>
</DataTemplate>
</UserControl.Resources>
misiniz bu iş? Eğer öyleyse, olayı yakalamak için "MyDataClass" 'a ne koymalıyım?
sayesinde Jeff
Bu, Komutların daha iyi olmasının nedeni budur. .NET 4 çerçevesinde, komutları (olaylardan farklı olarak) bağlayabilirsiniz, böylece MVVM'yi görünüm kodu olmadan ve işlevselliği bağlamadan kullanabilirsiniz. –