2017-01-09 88 views
-1

我一直在使用Silverlight自動完成框Introducing the AutoCompleteBox,現在我希望能夠應用一些樣式,但我似乎無法讓它做我想做的。Silverlight AutoCompleteBox樣式?

我應用的任何樣式只是呈現它不可見而沒有錯誤,並且無法調試XAML。

我只是試圖申請一些沒有運氣的圓角。我如何去做這件事?

這是XAML迄今爲止,

<Style TargetType="{x:Type controls:AutoCompleteBox}"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="{x:Type controls:AutoCompleteBox}"> 
        <Border Name="border" BorderThickness="0" 
         Padding="2,2,2,2" CornerRadius="5"> 
        </Border> 
       </ControlTemplate> 
      </Setter.Value> 
    </Setter>    
</Style> 
+1

這是一個空白邊框的ControlTemplate。顯然它沒有顯示任何東西。 – Clemens

+0

@Clemens,我看不到它是空的? – KyloRen

+0

它沒有顯示任何內容的子元素。從這裏開始閱讀:[通過創建ControlTemplate自定義現有控件的外觀](https://msdn.microsoft.com/zh-cn/library/ee230084(v = vs.110).aspx)。 – Clemens

回答

1

控制模板定義的控制的(完整)的外觀和你正在用空邊界替換AutoCompleteBox的(整個)默認模板。這就是爲什麼它不顯示。

您可以複製從MSDN的默認樣式/模板,然後修改它根據您的要求:

AutoCompleteBox樣式和模板:https://msdn.microsoft.com/ru-ru/library/dd728668(v=vs.95).aspx

請注意,您不能「覆蓋」ControlTemplate的一部分。您必須將整個模板定義爲一個整體。

+1

感謝您一如既往的幫助,歡呼聲。 – KyloRen