1

C# XAML Windows ストア アプリを作成しています。私のページにはグリッドがあります。そのグリッドに子要素を追加し、すぐにこの子の親を取得しようとします。親は null です。子要素から親グリッドを取得する方法はないようです。ここに私がやっていることを示すコードがあります。それほど複雑ではありません。

これは、子要素を追加して親要素を取得しようとするコードです。

FrameworkElement FieldView = Field.getView( true );
ContentPanel.Children.Add( FieldView );
Panel theParent = VisualTreeHelper.GetParent(FieldView) as Panel;
FrameworkElement theotherparent = (FrameworkElement)FieldView.Parent;

ContentPanel は、ページ上のグリッドです。FieldView は UserControl です。ページは問題なく表示され、どのコードにも例外はありません。唯一間違っているのは、FieldView の親を取得できないことです。ヌルです。

これを投稿する前に、簡単なテストを行って、UserControl が問題ではないことを確認しました。TextBlock を使用すると、同じ問題が発生します。

TextBlock Derf = new TextBlock();
PageGroup.ContentPanel.Children.Add(Derf);
Panel theParent2 = VisualTreeHelper.GetParent(Derf) as Panel;
FrameworkElement theotherparent2 = (FrameworkElement)Derf.Parent;

Windows ストア アプリで親プロパティが設定されることはありませんか? このコードは Window Phone 8 で正常に動作しました。

助けてくれてありがとう。

デイブ

4

1 に答える 1