के अंदर बाध्यकारी कमांड मेरे पास कमांड के साथ मेरे व्यूमोडेल से जुड़ा व्यू (एक्सएएमएल शामिल) है। डेटाग्रिड की पंक्ति पर बटन पर क्लिक करने पर मुझे कमांड का आह्वान करने की आवश्यकता है। मैं इसके लिए व्यवहार का उपयोग कर रहा हूं (नियमित कमांडिंग में एक ही समस्या है)। जब मैं डेटाग्रिड पर बटन क्लिक करता हूं - मेरा आदेश निकाल दिया नहीं जाता है।DataGridTemplateColumn
समस्या को चित्रित करने के लिए - मैंने नीचे एक ही बाध्यकारी सामग्री के साथ सूची बॉक्स को नीचे रखा - और हाँ, कमांड काम करता है। इसलिए, यह डेटा ग्रिड/DataGridTemplateColumn के साथ कुछ
<Grid x:Name="LayoutRoot" Background="White" DataContext="{Binding}">
<Grid.RowDefinitions>
<RowDefinition Height="30" />
<RowDefinition Height="*" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal">
<Button Content="Cancel" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<ei:CallMethodAction MethodName="Cancel" TargetObject="{Binding}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
</StackPanel>
<sdk:DataGrid AutoGenerateColumns="False" IsReadOnly="True" ItemsSource="{Binding Data}" Grid.Row="1">
<sdk:DataGrid.Columns>
<sdk:DataGridTemplateColumn CanUserReorder="True" CanUserResize="True" CanUserSort="True" Width="Auto">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Content="Select">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<i:InvokeCommandAction Command="{Binding ElementName=Control, Path=DataContext.ItemSelectedCommand}" CommandParameter="{Binding}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
<sdk:DataGridTextColumn Binding="{Binding DeviceId}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="Device" Width="Auto" FontWeight="Bold" />
<sdk:DataGridTextColumn Binding="{Binding SerialNumber}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="Serial Number" Width="Auto" />
<sdk:DataGridTextColumn Binding="{Binding LastActivityOn}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="Last Activity" Width="Auto" />
<sdk:DataGridTextColumn Binding="{Binding ClientVersion}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="Client Version" Width="Auto" />
<sdk:DataGridTextColumn Binding="{Binding OSVersion}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Header="OS Version" Width="Auto" />
</sdk:DataGrid.Columns>
</sdk:DataGrid>
<ListBox Grid.Row="2" ItemsSource="{Binding Data}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding DeviceId}"></TextBlock>
<Button Content="Select">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<i:InvokeCommandAction Command="{Binding ElementName=Control, Path=DataContext.ItemSelectedCommand}" CommandParameter="{Binding}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Grid>
कोई नहीं जानता ..? – katit
बटन की कमांड प्रॉपर्टी का उपयोग करने के बजाय आप इवेंट ट्रिगर का उपयोग क्यों कर रहे हैं? – Jehof
@Jehof कमांड का उपयोग एक ही समस्या प्रस्तुत करता है। मैं पूरे आवेदन – katit