我正在用xaml和c#編寫一個UWP項目。我有一個右側圖像的堆疊面板,您可以點擊圖像,它會在堆疊面板左側顯示相關的較大圖像。如何確保UI在點擊時更新到正確的圖像?
大圖像初始設置爲與加載頁面時堆疊面板中第一個「小」圖像有關的「大」圖像,但是當您單擊堆棧面板中的任何其他小圖像時,大圖像不更新。
整件事是一個放置在彈出窗口內的數據模板。對於「大」的形象有關的XAML是在這裏:
<Border Background="White" Grid.Row="2">
<Image Stretch="Uniform">
<Image.Source>
<BitmapImage UriSource="{Binding SelectedImage}" />
</Image.Source>
</Image>
</Border>
當點擊小圖片,它觸發該圖像的「螺紋」方法和方法是:
private void Image_Tapped(object sender, TappedRoutedEventArgs e)
{
var img = ((Windows.UI.Xaml.Controls.Image)sender).DataContext as obj
img.FlyoutContent.SelectedImage = new Uri(img.relatedPath);
}
我使用上面的代碼最初設置圖像,它的工作原理。點擊小圖標時,它不會改變大圖像。
在調試中,當我點擊堆疊面板中的小圖像時,我在「圖像輕敲」方法中斷,我可以看到uri得到正確更新並且沒有綁定錯誤。 UI永遠不會改變。
我錯過了什麼?
謝謝 扎克
*附註:在「目標文件」僅僅是一個自定義類的由名字。
它看起來有點像你設置的點擊圖片,這可能已經具備了圖像的來源。你確定你正在更改正確圖像的圖像源嗎? –
我不確定你在問什麼。你問我是否只是重新分配同一個uri到大圖像? – zachboy82
我在問,它是否是您正在獲取引用的正確的DataContext對象。在改變它之前,SelectedImage路徑與你正在改變的路徑有什麼不同? –