首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Silverlight中动态地将控件放在画布上?

在Silverlight中动态地将控件放在画布上,可以通过以下步骤实现:

  1. 首先,在XAML文件中创建一个Canvas控件,并为其设置一个名称,例如:
代码语言:<Canvas x:Name="myCanvas" />
复制
  1. 在代码文件中,创建一个新的控件实例,例如一个按钮:
代码语言:csharp
复制
Button myButton = new Button();
myButton.Content = "Click me!";
  1. 将新创建的控件添加到Canvas的子元素集合中:
代码语言:csharp
复制
myCanvas.Children.Add(myButton);
  1. 设置控件的位置,可以使用Canvas.Left和Canvas.Top附加属性:
代码语言:csharp
复制
Canvas.SetLeft(myButton, 100);
Canvas.SetTop(myButton, 50);

完整的代码示例如下:

代码语言:csharp
复制
Button myButton = new Button();
myButton.Content = "Click me!";
myCanvas.Children.Add(myButton);
Canvas.SetLeft(myButton, 100);
Canvas.SetTop(myButton, 50);

这样,就可以在Silverlight中动态地将控件放在画布上了。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Silverlight 2 Beta 1学习资源

Using Silverlight 2's DataGrid with WCF + LINQ to SQL: 这个15分钟的录像博客示范了如何在服务器建造一个LINQ to SQL对象模型,然后用WCF...将其发布,然后示范了如何建造一个使用了新的Silverlight DataGrid控件Silverlight客户端,该客户端调用WCF服务获取LINQ to SQL数据,将其绑定到DataGrid。...Simple Editing of Web Service Data in a DataGrid: Mike Taulty有一篇好贴,展示如何在服务器建造WCF服务,然后从Silverlight 2客户端使用它来获取数据...,绑定到DataGrid,允许用户更新数据行,添加/删除数据行,然后使用 Silverlight 2 Beta1数据保存到服务器。...Sorting with Silverlight 2's DataGrid Control: Silverlight 2 Beta1的DataGrid控件还没有内置的列数据排序支持(将在Beta2提供

1.2K70

silverlight 《Hands-On-Labs》教程系列

[在控件的使用和特点做了介绍] Requirements: This tutorial requires the above installs along with Expression Design...[建立可重复使用的控件就是自定义用户控件.自定义用户控件是从System.Windows.Controls.Control继承下来的.举个例子 TextBox控件就像一个容器控件一样.和asp.net非常的相似....你可以使用designer工具去设计界面然后添加事件,设置属性.在后置代码 调用方法.这个控件包可以在你开发的项目中就像内置空间的一样使用.此外你可以添加属性,方法,事件到你的控件来制定更加适应的控件...[在设个教程你将会看到如何使用css来Silverlight plug-in进行交互.如何建立适应浏览器大小变化的Silverlight,如何融合HTML和Silverlight,如何在浏览器和c#访问...[如何在XAML建立Storyboards制作动画.] Requirements: This tutorial requires the above installs only.

91770
  • microsoft silverlight

    Silverlight提供灵活的编程模型,并可以很方便地集成到现有的网络应用程序。...借助该技术,您将拥有内容丰富、视觉效果绚丽的交互式体验,而且,无论是在浏览器内、还是在 桌面操作系统(Windows和 Apple Macintosh),您都可以获得这种一致的体验。...Silverlight使开发设计人员能够更好的协作,有效地创造出能在Windows和Macintosh多种浏览器运行的内容丰富、界面绚丽的Web应用程序—— Silverlight应用程序。...例如,在 Silverlight 自动更新时发送到 Microsoft 的信息存储在具有有限的访问权限的计算机系统,而这些计算机系统则位于受控制的设备。...发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站立刻删除。

    1.3K90

    看到XNA的弹幕,于是也用SilverLight弄了个弹幕

    这两天在首页看到太多悲观的东西了,给大家来个有趣点的乐呵乐呵,改变下心情       SilverLight的确是好东西,我把我们公司项目中的地图客户端用SilverLight改写之后,明细效果就是不一样...,尤其是在回放轨迹的时候,那真叫平滑和稳定       这个弹幕的生成其实很简单了,单发子弹的结构,其实是一个画布里面嵌入了一个圆, 其中分别对画布应用了角度转换,对圆应用了平移转换。...不过,一般来说我们习惯性会考虑通过三角函数之类来计算动画的起始点,来生成子弹的动画轨迹,不过我这里偷了个懒,直接在一个子画布放一个子弹,这样就可以分别应用角度转换和平移转换了。.../******       改正:其实是可以应用多个转换的,今天才知道-____________-;       有一个需要注意的地方是,生成了那么多子弹对象,当它们的动画结束之后,应该立刻将其从画布移除...但是似乎没办法在动画板结束事件取到那个子弹的对象,所以我只好将它放在一个字典里,动画完成后到字典里查出来,再移除。

    1.3K130

    了解WPF的布局过程,并利用Measure为Expander添加动画

    例如上图的这种动画,这种动画挺常见的,在内容的高度改变时动态地改变自身的高度,除了好看以外,对用户体验也很有改善。可惜的是WPF本身没有默认这种这方面的支持,连Expander的展开/折叠都没有动画。...其实老老实实从Silverlight Toolkit移植AccordionItem就好,但我想通过这个控件介绍一些布局(及动画)的概念。...2.1 两步布局过程 WPF的布局大致分为Measure和Arrange两步,布局元素首先递归地用Measure计算所有子元素所需的大小,然后使用Arrange实现布局。...当StackPanel需要重新布局(StackPanel的大小改变),这时候StackPanel就重复两步布局过程。...结语 Resizer控件我平时也不会单独使用,而是放在其它控件里面,例如Button: ? 由于这个控件性能也不高,以后还可能改进API,于是被放到了Primitives命名空间。

    1.5K30

    WPF面试题-来自ChatGPT的解答

    它是WPF的一部分,但也被用于其他.NET技术,Silverlight和UWP(Universal Windows Platform)应用程序。...常见的图形控件包括Image(图像控件)、Canvas(画布控件)、Rectangle(矩形控件)、Ellipse(椭圆控件)等。...可重用性:MVVM模式鼓励业务逻辑放在模型视图逻辑放在视图模型。这种分离使得视图和模型可以独立地进行开发和测试,并且可以在不同的应用程序重用。...开发者可以通用的业务逻辑和数据转换逻辑放在视图模型,以便在不同的视图中重用。 支持团队协作:MVVM模式的清晰分层结构和明确的职责分工,使得团队成员可以更好地协作开发。...Dispatchers类提供了几个静态方法,Invoke、BeginInvoke等,用于工作项(Delegate)调度到UI线程执行。

    40730

    blend

    终于效果例如以下: ←点它 本人一直在做WPF算是第一次做silverlight,这样主要是为了可以在博客里更好的展示成品 。...(调角度时按shift也有效果哦) 然后我们把画好的三角形再CtrlV、CtrlC复制一份出来,把上面一层的边框颜色改为白色,例如以下图(有必要说明一下,由于XAML为解释性语言,后面创建的控件会覆盖在前面创建的控件...做好后例如以下图: 再重复调以下一层三角形的Effect.Radius和边框粗细和颜色,直到自己想要的效果 作为一个Button它有点太大了,我们用选择工具(V) 在画布上框选,或在左边树状结构里选中两个...然后右键Grid,构成控件… 我们选择Button确定。...没有VisualBrush所以实现倒影略显繁琐….

    45620

    Silverlight 结构分析

    本文的重点在于探讨Silverlight的整体架构,以及Silverlight应用程序是如何在浏览器运行的,各个子部分的作用是什么。 1.     ...,主要文件如下: -   npctrl.dll 实现了浏览器plug-in接口,Silverlight通过这个ActiveX控件与宿主浏览器进行交互。...2.4  跨平台支持 Silverlight提供了一个平台抽象层来支持更多的操作系统例如MacOS X,如下图: ? 在PAL层定义了跟Win32相同的API接口,在Mac操作系统上会被重新定向。...3.2  Silverlight运行顺序 最后我们看一下Silverlight应用在浏览器是如何被执行的: -   浏览某个带有Silverlight的网页 -   浏览器加载Plug-in -  ...最近再做一些基于Silverlight控件开发,感觉需要从结构上来梳理一下Silverlight。 写的比较仓促,希望批评指正。

    89580

    Silverlight4控件纯客户端注册验证

    但是Silverlight控件最终是在浏览Silverlight程序的网站用户机器执行的。说的有点绕,请参照下图。 ?...这个纯客户端注册验证机制主要流程如下: 1, 控件购买者下载使用Silverlight控件Silverlight控件包含PublicKey及验证License的逻辑)。...2, 控件购买者通过控件生成商提供的网站输入一些注册信息(输入程序部署路径等唯一标示),付费,完成注册。...5, 网站用户浏览控件购买者开发部署的网站,下载Silverlight控件在网站用户机器执行,并验证License文件的签名及程序部署路径等唯一标识。...当用户浏览网站时,Silverlight控件会下载到在用户机器执行,从而进行注册码验证工作。

    1.2K50

    WPF 画布工具栏的可扩展设计

    本文就来告诉大家我的这个设计方案 大概的软件的界面如下图 我期望在代码,这个库可以方便被大家使用,而小伙伴使用的时候最多的是扩展工具栏。添加一个自己的工具栏。...,那么这个工具栏就不能写到 XAML ,只能放在后台代码。...其实可以使用附加属性的方法 附加属性可以支持继承,也就是上层容器, Grid 等这些容器控件设置的属性,将会被容器内的所有控件获得。...也就是我在上层的 Grid 设置一个可以继承的附加属性,此时在 Grid 里面的所有控件就都能获取这个在 Grid 设置的属性 设置附加属性的方法是通过 PropertyMetadata 修改为 FrameworkPropertyMetadata...,然后在 Loaded 里面拿到画布,使用的方法也简单 本文代码放在github欢迎小伙伴访问

    47410

    ASP.NET MVC 4的单页面应用程序

    该项目也称为ASP.NET SPA,其项目类型基于一组开源库以及WPF、Silverlight上流行的MVVM模式。...绑定过程与设置控件的DataContext属性不同,你需要调用ko.applyBindings完成。...然而这并不妨碍子控件拥有不同的数据上下文,面对这种情况只需简单地为它们使用“with”或“foreach”绑定即可。...其中“with”绑定类似于控件的DataContext绑定到视图模型的属性,而后者“foreach”本质创建了一个项目集合控件。 位于技术组顶端的是nav.js,它是微软新推出的一个库。...在示例,Knockout数据绑定用作动态地显示和隐藏这些页面。 大部分服务端数据访问都由抽象类DataController处理。

    1.5K70

    《101 Windows Phone 7 Apps》读书笔记-Weight Tracker

    虽然这是一个基于Pivot控件的应用程序,但是本章内容的目的是演示如何在我们的应用程序中加入图和表。...在笔者撰稿时,Silverlight 4 Toolkit的图表控件无法运行在Windows Phone平台上!    ...Silverlight 4的图表控件需要的功能不被Windows Phone版本的Silverlight所支持,所以尝试使用该版本会导致运行时抛出很难解析的异常。...虽然这的确有点奇怪,图29.2所有7种类型的图表整合到了一起。 ? 图29.2 在同一张图表整合了七种类型的nonstacked图表。...图表集合,后面几种类型的渲染建立在前面几种类型的基础,这样做是为了使得目标体重的星标不被折线图所遮盖。

    1.4K80

    WPF 自己封装 Skia 差量绘制控件

    本文告诉大家如何封装一个支持差量绘制的控件,默认的绘制方法都是每次都是不保存上次绘制的内容,而且清空画布,重新绘制。...这样的绘制方法显然效率不够高 在上一篇博客里面告诉大家如何在 WPF 中使用 Skia 绘制,请看 WPF 使用 Skia 绘制 WriteableBitmap 图片 而这样的绘制方式意味着每次都需要重新绘制画布...或者换句话说,这里的绘制逻辑有坑在于不能做到对准界面更新 上面这个方法是提供差量更新的,也就是每次绘制的内容都会在上一次画布的基础继续绘制 下面写一点代码试试,在鼠标划过应用时,绘制出鼠标划过的点,这些点连为线...上面代码给 SkiaCanvas 一个固定的宽度和高度,为什么需要给他这个值,在上文告诉了大家 接下来在 UIElement_OnMouseMove 方法,也就是 Grid 容器收到的鼠标划过的事件,划过的点作为线段在画布...如果每次都能返回具体更新的范围,那么这个控件的绘制效率还是不错的 本文的代码放在 github 欢迎小伙伴访问

    1.1K30
    领券