如何提取点击画布的背景颜色
本文关键字:背景 颜色 何提取 提取 | 更新日期: 2023-09-27 18:32:38
我想允许用户选择要用于应用栏的颜色。我有这样的 XAML:
<StackPanel Orientation="Horizontal">
<Canvas Background="Aqua" Width="20" Height="20" VerticalAlignment="Center" Tapped="CanvasColor_Tapped"></Canvas>
<TextBlock Text="Aqua" VerticalAlignment="Center"></TextBlock>
</StackPanel>
。对于处理程序来说,这个想法:
private void CanvasColor_Tapped(object sender, TappedRoutedEventArgs treArgs)
{
if (sender is Canvas)
{
Color colour = (Canvas) sender.Background;
}
}
。但是编译器和我的头盖骨不合作/不在同一波长上。具体来说,我得到:
"对象"不包含"背景"的定义,并且找不到接受类型为"对象"的第一个参数的扩展方法"背景"(您是否缺少 using 指令或程序集引用?
我需要做什么才能在所有 Canvas 控件之间共享事件处理程序以提取点击画布的背景色?
我猜你缺少一对括号。
Color colour = ((Canvas)sender).Background;
编译器正在sender
对象中查找Background
属性,该属性的类型为 object
。