我有這樣的XAML示例:怎麼看ItemControl.ItemsPanel.Template從代碼隱藏
<ItemsControl MinHeight="150" ItemsSource="{Binding fieldList}" Name="myItemsControl">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Canvas Name="canvasFields" MinHeight="150" Background="White" Margin="10" Height="{Binding HauteurCanvas}"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemContainerStyle>
<Style TargetType="ContentPresenter">
<Setter Property="Canvas.Left"
Value="{Binding Column}" />
<Setter Property="Canvas.Top"
Value="{Binding Row}" />
<Setter Property="Width"
Value="{Binding Width}" />
<Setter Property="Height"
Value="{Binding Height}" />
</Style>
</ItemsControl.ItemContainerStyle>
<ItemsControl.ItemTemplate>
<DataTemplate>
<c:ControlCustomField MouseLeftButtonDown="ControlCustomField_MouseLeftButtonDown" MouseMove="ControlCustomField_MouseMove" MouseLeftButtonUp="ControlCustomField_MouseLeftButtonUp"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
而且我想進入電影從代碼canvasFields
落後,但我只能看到myItemsControl。
到目前爲止,我試過很多東西。在後面的代碼,這些都不作品:
canvasFields
這僅僅是沒見過。
((Canvas)(myItemsControl.ItemsPanel.Template))
這給出了一個「無法轉換」的錯誤。
myItemsControl.canvasFields
這也沒有看到。
那麼,你看到了這筆交易..我怎麼能從代碼後面「看到」canvasFields?
我可能錯過了一些非常明顯的訪問它...
在此先感謝!
你想要什麼?無論你想要做什麼,你可能都需要通過適當的DataBinding來完成,而不是程序代碼。 –
你可能是對的。我會沿着這條道路前進,並在此進一步介紹我的進展。 –