TicTacToeGame gibi bir şey yapıyorum, MVVM kullanmaya çalışıyorum ve bu noktada bir sorunla karşılaştım. Anlayamıyorum (eğer mümkünse), farklı DataTempalte elemanlarına farklı isimler koyuyorum (tam olarak "Düğmeler"). DataTemplate öğelerine farklı adlar nasıl ayarlayabilirim?
<Window x:Class="TicTacToeCommand.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:TicTacToeCommand"
mc:Ignorable="d"
Title="MainWindow" Height="500" Width="400"
Background="White"
Name="mainW">
<Window.Resources>
<Style x:Key="ButtonsStyle" TargetType="Button">
<Setter Property="Command" Value="{Binding ElementName=mainW, Path=DataContext.GetButtonPressCommand}"></Setter>
<Setter Property="Margin" Value="5"></Setter>
<Setter Property="Background" Value="Black"></Setter>
</Style>
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="47*"/>
<RowDefinition Height="20*"/>
</Grid.RowDefinitions>
<ItemsControl Grid.Row="0" ItemsSource="{Binding ButtonsList}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button Content="{Binding Content}"
Name="b1"
Style="{StaticResource ButtonsStyle}"
CommandParameter="{Binding ElementName=b1, Path=Name}">
</Button>
</DataTemplate>
</ItemsControl.ItemTemplate>
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Rows="3" Columns="3" Name="uniformGrid1">
</UniformGrid>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>
</Grid>
benim XAML kodunu var
. ... hepsi o ve alma çünkü ben hepsini farklı bir ad olması gerekir, Ve ayrıca, ben bir Komutanlığında Bir Komut Parametre olarak adını göndermeye çalışıyorum ama im daima "b1" adı alınırken
Mümkünse bundan sonra bu isimleri komuta yolluyorum?
Yardım için çok minnettar olacağım ve olası hatalar için lütfen beni önceden bilgilendirin.
Evet, bunu yapabilirsiniz ama MVVM ihlali değil mi bu viewmodel için? – kotki
Yine de elementlerime farklı isimler vermenin bir yolu var mı (b1, b2, b3 ...)? – kotki
@kotki, görünüm modelinde 'ButtonsList' kullanıyorsunuz. CommandParameter bu listenin tek bir öğesi olacaktır. İlk bölüm sizin için kabul edilebilir ise, ikincisi aynıdır. isimleri ile ilgili: Ben bunu yapmaya çalıştım, basit attemp diyor ki Ading MarkerIxtension destekliyor Binding – ASh