C# 无法隐式转换类型';对象';至';Windows.UI.Xaml.Media.ImageSource';。存在显式转换(是否缺少强制转换?)

C# 无法隐式转换类型';对象';至';Windows.UI.Xaml.Media.ImageSource';。存在显式转换(是否缺少强制转换?),c#,wpf,xaml,C#,Wpf,Xaml,为什么会这样?我想在这种情况下使用什么 private void inlineImageCantrol_Tapped(object sender, TappedRoutedEventArgs e) { ItemsControl ImageToGrid = (ItemsControl)sender; ImageSource imgSource = ImageToGrid.ItemsSource; //Error } 显然,您的ImageToGrid.

为什么会这样?我想在这种情况下使用什么

private void inlineImageCantrol_Tapped(object sender, TappedRoutedEventArgs e)
    {
       ItemsControl ImageToGrid = (ItemsControl)sender;

       ImageSource imgSource = ImageToGrid.ItemsSource; //Error
    }

显然,您的
ImageToGrid.ItemsSource
不是
ImageSource


这永远不会是真的,因为
ItemsSource
是一个“列表”,而
ImageSource
不是。

ItemsSource
是一个
对象,而不是一个
ImageSource
,您正试图隐式转换它

除此之外,ItemsControl.ItemsSource是一个表示数据集合的
IEnumerable
,而不是
ImageSource
,因此您可能需要完全改变方法


有关
itemsource
属性的更多信息,请参见

嘿,你问了两次同样的问题。呆在那里把它修好。买本关于WPF的书怎么样?也许还有一个关于C的问题。这会有很大帮助…@user,这没有意义。您同时在两个地方同时运行同一个问题。@GarryVass我正在尝试解决该错误。好的,我知道ImageSource不是同一个“ItemsSource”,所以我想用什么来代替ImageSource?@GarryPass你能举个例子说明我需要做什么吗?