wpf中Canvas 怎么转换成的图片二进制码转给
答案:2 悬赏:80 手机版
解决时间 2021-02-05 07:51
- 提问者网友:萌卜娃娃
- 2021-02-04 07:17
wpf中Canvas 怎么转换成的图片二进制码转给
最佳答案
- 五星知识达人网友:雾月
- 2021-02-04 07:43
public System.Drawing.Image ReturnPhoto(byte[] streamByte)
{
System.IO.MemoryStream ms = new System.IO.MemoryStream(streamByte);
System.Drawing.Image img = System.Drawing.Image.FromStream(ms);
return img;
}
{
System.IO.MemoryStream ms = new System.IO.MemoryStream(streamByte);
System.Drawing.Image img = System.Drawing.Image.FromStream(ms);
return img;
}
全部回答
- 1楼网友:不如潦草
- 2021-02-04 08:12
使用 xamlreader 和 xamlwrite 是可以复用一个 uielement.
但在保存时最好指定 xmlns. 另外, 如果将要复用的 uielement (例如 canvas) 定义为一种 resource, 则只能添加一次,否则,出现:
specified visual is already a child of another visual or the root of a compositiontarget.
这种错误.
但我给个方便的例子,不用 xaml reader/writer 来完成对 uielement 或 frameworkelement 的复制/重用:
楼主是用 canvas, 然后在 canvas 里放一些矢量图(其实放什么不重要),然后显示 200 个这样的 canvas, 那好,将这个 原始的 canvas 定义为一种资源:
// 这里省略号表示省略了一些内容(例如 xmlns)
下面是后台的逻辑 code:
怎么触发自己设置
void display200canvas()
{
for(int i=0; i<200; i++)
{
control ctrl=new control();
ctrl.template = window.resources["mycanvas"] as controltemplate;
// 这里设置一下 ctrl 的位置, 不要重叠就可以了,怎么设置就略去了
// .....
layoutroot.children.add(ctrl);
}
}
完成~
主要是利用 control 控件加载 controltemplate, 而 这个 controltemplate 就是你所要显示的东西,它作为 xaml 中的 资源 定义在 controltemplate 元素中.
实际上这并不限是 canvas.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯