0
A
回答
5
假設你有一個定義的樣式如下
<Style x:Key="myStyle" TargetType="{x:Type Button}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Button x:Name="myTemplatedButton" Content="my templated button"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
而你把它應用到一個按鈕
<Button x:Name="myButton" Content="my default button" Style="{StaticResource myStyle}"/>
您可以在控制模板訪問按鈕,如下
var myTemplatedButton = myButton.Template.LoadContent() as Button;
如果將按鈕放置在ControlTemplate
內的容器中,例如StackPanel
:
<StackPanel>
<CheckBox IsChecked="True"/>
<Button x:Name="myTemplatedButton" Content="my templated button"/>
</StackPanel>
您可以提取主容器和使用方法FindName讓你的模板按鈕
var templatedControl = myButton.Template.LoadContent() as FrameworkElement;
var templatedButton = templatedControl.FindName("myTemplatedButton") as Button;
希望這有助於
+0
謝謝你的男人! =) – Sergio
+0
當代碼位於Themes文件夾中的Generic.xaml文件中時,這不起作用。 –
相關問題
- 1. 代碼風格:訪問財產
- 2. 從代碼隱藏訪問asp:Tablerow風格
- 3. 訪問VBA代碼的版本控制?
- 4. 代碼中的訪問控制屬性
- 5. Github企業代碼訪問控制
- 6. 無法通過代碼訪問控制
- 7. 訪問控制允許源代碼405?
- 8. 如何控制與代碼的狀態欄風格Swift3.0
- 9. 關於Java代碼風格的問題
- 10. Qt風格控制
- 11. 在C++代碼背後設置控制風格
- 12. Laravel:REST風格的控制器
- 13. WPF風格的控制庫
- 14. 用戶控制訪問代碼背後的問題
- 15. 源代碼控制問題
- 16. 的代碼風格名稱
- 17. AngularJS中的代碼風格
- 18. eclipse中的代碼風格
- 19. 控制兒童控制風格
- 20. 訪問風格元素
- 21. 訪問風格修改
- 22. 開放源代碼的ORM與PHP的訪問控制
- 23. 控制風格覆蓋
- 24. 改寫控制風格
- 25. 關於MPMoviePlayer控制風格
- 26. ASCX控制流失風格?
- 27. 奇怪DWT-控制風格
- 28. 訪問控制模板的WPF兒童代碼
- 29. 用於配置Selenium訪問JavaScript控制檯的Ruby代碼
- 30. 控制ASP.NET的WebAPI JSON序列沒有訪問源代碼
您已經嘗試了什麼? –