有沒有人有關於如何設計新的搜索框(http://msdn.microsoft.com/library/windows/apps/dn252771)以僅顯示字形的示例?某些Windows 8.1商店應用程序僅顯示帶有搜索字形的搜索框,並且當您按搜索字形時,將顯示文本框。設計新的Windows 8.1搜索框只使用字形
我一直無法找到一個示例應用程序顯示此。
有沒有人有關於如何設計新的搜索框(http://msdn.microsoft.com/library/windows/apps/dn252771)以僅顯示字形的示例?某些Windows 8.1商店應用程序僅顯示帶有搜索字形的搜索框,並且當您按搜索字形時,將顯示文本框。設計新的Windows 8.1搜索框只使用字形
我一直無法找到一個示例應用程序顯示此。
將SearchBox添加到您的頁面,然後在設計器中右鍵單擊它並選擇Edit template。根據需要創建一個副本並對其進行設置。
As Vlad's Answer metioned您需要創建一個樣式。
將SearchBox添加到您的頁面,然後在設計器中右鍵單擊它並選擇Edit template。
然後從混合風格里面,你需要修改正常,聚焦狀態和FocusedDropDown狀態爲自動顯示/隱藏焦點變化。
下面是使用混合擬議的步驟,將與您攜手,
最終的代碼是在這裏在這個gist
1 - 添加搜索盒
<SearchBox HorizontalAlignment="Right" VerticalAlignment="Top" Width="250" Margin="0,15,0,0"/>
添加也是空的按鈕捕獲最初專注於搜索框,請檢查此answer。
<Button Width="0" Height="0"/>
2-右鍵點擊搜索盒編輯模板
3-模板的內部,SearchBoxGrid的變化幅度爲32只顯示字形,並設置水平取向爲右。在混合
4-選擇狀態選項卡,然後選擇聚焦狀態。
5- SearchBoxGrid網格的設置寬度,以自動重新設置和水平對準伸展。
或聚焦下拉狀態手動添加那些線聚焦狀態
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Width)" Storyboard.TargetName="SearchBoxGrid">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<x:Double>NaN</x:Double>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.HorizontalAlignment)" Storyboard.TargetName="SearchBoxGrid">
<DiscreteObjectKeyFrame KeyTime="0">
<DiscreteObjectKeyFrame.Value>
<HorizontalAlignment>Stretch</HorizontalAlignment>
</DiscreteObjectKeyFrame.Value>
</DiscreteObjectKeyFrame>
</ObjectAnimationUsingKeyFrames>
6-照此4個& 5步驟。
這是一個定製的樣式。我似乎無法找到他們發佈SearchBox的默認樣式模板的位置(可能他們還沒有這樣做,因爲類定義本身仍然是「初步的」)。我還沒有安裝Windows 8.1,所以我也無法獲得默認樣式。如果你不介意試圖找到它,我會願意看看。我不是100%確定這是否可行,但如果您右鍵單擊設計器中的SearchBox並轉到「編輯模板」,您可以找到默認樣式並將其發佈到此處。 –
嗨,這是風格:https://docs.google.com/file/d/0BwaBDWc05M-UeGpuakVRbDBUTEk/edit?usp=sharing – kimtiede
你有沒有找到一個很好的解決方案呢? –