【发布时间】:2012-10-15 11:44:57
【问题描述】:
我对 Silverlight 应用程序非常陌生。我最近一天一直在尝试这个,但我还是无法做到。在我的情况下,它需要点击三下才能打开组合框。
我的 XAML 代码:
<sdk:DataGridTemplateColumn Header="Category" Width="100">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox Name="cmbCategory"
IsDropDownOpen="True"
ItemsSource="{Binding Source={StaticResource MyViewModel},Mode=OneWay,Path=pcProjTypeTaskCtry}"
DisplayMemberPath="TaskCtgyName" SelectedValuePath="TaskCtgy_FK"
SelectedValue="{Binding piTaskCtgy_FKField,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" ToolTipService.ToolTip="{Binding psTaskCtgyNameField,UpdateSourceTrigger=PropertyChanged}"/>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
<sdk:DataGridTemplateColumn Header="SubCategory" Width="110">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Name="tbSubCategory" Text="{Binding Path=psTaskSubCtgyNameField,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" ToolTipService.ToolTip="{Binding psTaskSubCtgyNameField}" >
</TextBlock>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
<sdk:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding Source={StaticResource MyViewModel},Mode=TwoWay,Path=pcTaskSubCtry}"
DisplayMemberPath="TaskSubCtgyName" SelectedValuePath="TaskSubCtgyName"
SelectedItem="{Binding Source={StaticResource MyViewModel},Path=SelectedSubTask,Mode=TwoWay}"
SelectedValue="{Binding psTaskSubCtgyNameField,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
ToolTipService.ToolTip="{Binding psTaskSubCtgyNameField}">
</ComboBox>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellEditingTemplate>
</sdk:DataGridTemplateColumn>
【问题讨论】:
-
您确实必须鼠标按下(单击)3 次才能让组合框做出响应?这根本不是预期的行为,您的 xaml 中没有任何内容表明它是故意的。您是否完全自定义了控件模板或任何其他可能导致它的内容?
标签: silverlight datagrid combobox