如何打开XML文件,重新绘制控件

1、加载XML文件

XElement root = XElement.Load(openFile.FileName);

 

2、针对每个XElement,反序列化

   IEnumerable<XElement> itemsXML =root.Elements("DesignerItems").Elements("DesignerItem");
foreach (XElement itemXML in itemsXML)
   {
               
        DesignerItem item = DeserializeDesignerItem(itemXML, id, 0, 0);
        this.Children.Add(item);
         SetConnectorDecoratorTemplate(item);
    }
 private static DesignerItem DeserializeDesignerItem(XElement itemXML, Guid id, double OffsetX, double OffsetY)
        {
            DesignerItem item = new DesignerItem(id);
            item.Width = Double.Parse(itemXML.Element("Width").Value, CultureInfo.InvariantCulture);
            item.Height = Double.Parse(itemXML.Element("Height").Value, CultureInfo.InvariantCulture);
            item.ParentID = new Guid(itemXML.Element("ParentID").Value);
            item.IsGroup = Boolean.Parse(itemXML.Element("IsGroup").Value);
            Canvas.SetLeft(item, Double.Parse(itemXML.Element("Left").Value, CultureInfo.InvariantCulture) + OffsetX);
            Canvas.SetTop(item, Double.Parse(itemXML.Element("Top").Value, CultureInfo.InvariantCulture) + OffsetY);
            Canvas.SetZIndex(item, Int32.Parse(itemXML.Element("zIndex").Value));
            Object content = XamlReader.Load(XmlReader.Create(new StringReader(itemXML.Element("Content").Value)));
            item.Content = content;
            return item;
        }

 

3、在Canvas中添加这些控件

 this.Children.Add(connection);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
XML(可扩展标记语言)是一种常用的文本格式,用于描述数据的结构和内容。在Android中,XML被广泛用于界面布局的描述,可以很方便地实现界面的绘制。 Android界面布局可以通过XML文件来实现。在XML文件中,可以定义各种布局控件,如LinearLayout、RelativeLayout、FrameLayout等。每个控件都有不同的属性,可以设置控件的大小、位置、颜色、字体等等。 以下是一个简单的Android界面布局的XML代码示例: ```xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" /> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Click Me!" /> </LinearLayout> ``` 在这个布局中,使用了一个LinearLayout作为根布局,它的方向设置为垂直方向。在LinearLayout中又包含了一个TextView和一个Button控件。TextView的文本内容为“Hello World!”,Button的文本内容为“Click Me!”。 在Android中,布局文件通常存放在res/layout目录下。在Java代码中,可以通过调用setContentView方法来加载布局文件: ```java setContentView(R.layout.activity_main); ``` 其中activity_main是布局文件的名称。 总的来说,XML是Android界面绘制技术中非常重要的一种技术,它可以方便地实现界面的布局和设计。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值