如何從代碼隱藏中訪問我的btnViewTable?特別要能夠打開或關閉可見性,或甚至將其刪除。我已經看過GetTemplateChild以及FindName,但一直無法訪問該按鈕。我可以設法獲得對ControlTemplate的引用,但除此之外無法獲得任何進一步的信息。如何訪問ControlTemplate內部的控件
<Grid x:Name="pnlSearch" Background="White">
<TextBlock x:Name="txtSearchResults" />
<sdk:DataGrid x:Name="grdResults">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Binding="{Binding Value}"/>
<sdk:DataGridTextColumn Binding="{Binding FoundFieldName}"/>
</sdk:DataGrid.Columns>
<sdk:DataGrid.RowGroupHeaderStyles>
<Style TargetType="sdk:DataGridRowGroupHeader">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="sdk:DataGridRowGroupHeader">
<sdk:DataGridFrozenGrid Name="Root">
<StackPanel>
<Button x:Name="btnViewTable"
這樣做給我的錯誤「System.Windows.Controls.ControlTemplate」不包含定義‘FindName’和沒有擴展名方法'FindName'接受類型'System.Windows.Controls.ControlTemplate'的第一個參數可以找到(你是否缺少使用指令或程序集引用?)「 – TruthOf42
我目前沒有DataGrid在我的機器上測試它出。這個想法是存在的,你可以嘗試挖掘DataGrid並尋找DataGridRowGroupHeader並且可能循環遍歷它,一旦你得到了一個項目,它應該有Template屬性,你可以在其中訪問它並且執行FindName –