0

TestImageという名前の単純なものGridがあり、そのGridインスタンスを他のクラスに渡す必要があります。Image他のクラスはTestImageを見つけ、それを変更しSourceます。

XAMLの分離コードからアクセスしようとすると問題ありませんが、のGridインスタンスGridを他のクラスに渡そうとすると、そこでTestImageにアクセスできません。

TestPage.xaml.cs

var otherClass = new OtherClass();
otherClass.DoSomeStuff(this.GridName);

OtherClass.cs

public void DomeSomeStuff(Grid gridInstance)
{
    gridInstance.TestImage.Source = ....;
}

そして、私はエラーメッセージを受け取ります:

「Windows.UI.Xaml.Controls.Grid」には「TestImage」の定義が含まれておらず、「Windows.UI.Xaml.Controls.Grid」タイプの最初の引数を受け入れる拡張メソッド「TestImage」が見つかりませんでした

私はこのエラーを理解していますが、それを修正する方法がわかりません。

手伝ってくれませんか。ありがとうございました。

4

1 に答える 1

1

これを試して:

public void DomeSomeStuff(Grid gridInstance)
{
    var image = VisualTreeHelper.GetChild(gridInstance, 0) as Image;
    // or var image = gridInstance.Children[0] as Image;
    // or var image = gridInstance.FindName("TestImage") as Image;
    if (image != null)
        image.Source = ...;
}
于 2012-10-18T08:39:10.440 に答える