【问题标题】:Load image on canvas Windows phone在画布 Windows 手机上加载图像
【发布时间】:2013-01-25 00:39:51
【问题描述】:

我正在使用 PhotoChooserTask 选择图像。 我正在尝试在画布上加载选定的图像但无法加载。

这是我的代码

 void photoChooserTask_Completed(object sender, PhotoResult e)
    {
        if (e.TaskResult == TaskResult.OK)
        {
            Image image = new Image();
            string path = e.OriginalFileName;
            Uri uri = new Uri(path, UriKind.Relative);

            ImageSource img = new System.Windows.Media.Imaging.BitmapImage(uri);

            image.Height = paint.Height;
            image.Width = paint.Width;

            image.SetValue(Image.SourceProperty, img);

            Canvas.SetLeft(image, 50);
            Canvas.SetTop(image, 50);

            paint.Children.Add(image);
        }
    }

MainPage.xaml

 <Canvas x:Name="paint" Background="Transparent" Margin="0,95,0,139" >

 </Canvas>

我明白为什么这不起作用。我的代码有什么变化吗?

【问题讨论】:

  • 您是否应该通过Canvas.LeftCanvas.Top 属性设置图像在画布中的位置?例如。 Canvas.SetLeft(image, 10); Canvas.SetTop(image, 10);
  • 给图片一个宽度和高度
  • @kindasimple 我已经编辑了我的问题
  • 给你的画布一个宽度和一个高度
  • 你能不能试着把这个UriKind.Relative改成UriKind.Absolute

标签: windows-phone-7 canvas windows-phone-7.1


【解决方案1】:

添加我的评论作为答案,因为我很确定这是问题所在。

您是否应该通过Canvas.LeftCanvas.Top 属性设置图像在画布中的位置?例如。

Canvas.SetLeft(image, 10); 
Canvas.SetTop(image, 10); 
paint.Children.Add(image);

【讨论】:

  • 您确定 pathuri 正在为图像创建有效的源属性,因为它似乎对我来说工作正常。
  • 是的,我正在使用 PhotoChooserTask 从独立存储中选择图像。
猜你喜欢
  • 2016-05-20
  • 1970-01-01
  • 2021-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多