2011-08-29 70 views
0

我有一個ComboBox與ComboBox.ItemTemplateComboBoxItem選擇區域問題

<ComboBox> 
    <ComboxBox.ItemTemplate> 
     <DataTemplate DataType="{x:Type ViewModel}"> 
     <TextBlock Text="1" /> 
     </DataTemplate> 
    </ComboxBox.ItemTemplate> 
</ComboBox> 

的項目呈現正常,但是當我嘗試選擇ComboxItem,選擇僅適用於「1」的區域的其餘部分可用在ComboBoxItem中不可點擊。

如何設置代碼,以便選擇可以發生在整個項目上,而不僅僅是文本塊。

Screenshot

+0

這是完整的ComboBox定義嗎?我很肯定,這不是通常的行爲 –

+0

我不能在.NET 3.5中複製這個。使用您提供的數據模板時,我可以選擇整個組合框項目。但是,如果我用ComboBoxItem包圍文本框,則可以看到類似於所描述的內容的東西。 – RMart

回答

1

你的ComboBox/ComboBoxItem似乎被默認模板,突出刷更深的藍。如果您有權訪問模板,請確保ComboBoxItem的內容水平延伸。

如果模板「正確」綁定,則設置內容對齊可能就足夠了。

<ComboBox.ItemContainerStyle> 
    <Style TargetType="{x:Type ComboBoxItem}"> 
     <Setter Property="HorizontalContentAlignment" Value="Stretch" /> 
     <Setter Property="VerticalContentAlignment" Value="Stretch" /> 
    </Style> 
</ComboBox.ItemContainerStyle> 
+0

謝謝你做到了。首先應該看最簡單的解決方案。 – jmogera