属性中的序列化子类 [英] Serialization sub class in attribute

查看:104
本文介绍了属性中的序列化子类的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以序列化子类只有属性字符串而不是内容?



我尝试过:



我使用此代码进行用户控制的序列化网格



Is possible serialize sub class like only attribute string and not like content?

What I have tried:

I'm serializate grid with user control with this code

Dim outstr As New Text.StringBuilder()
Dim settings As New Xml.XmlWriterSettings()
settings.Encoding = Text.Encoding.Default
settings.Indent = True
settings.IndentChars = (ControlChars.Tab)
settings.NewLineChars = vbCrLf
settings.NewLineOnAttributes = True
settings.OmitXmlDeclaration = True

Dim dsm As New Markup.XamlDesignerSerializationManager(Xml.XmlWriter.Create(outstr, settings))
dsm.XamlWriterMode = Markup.XamlWriterMode.Expression
Markup.XamlWriter.Save(myGrid, dsm)
File.WriteAllText(PathFile, outstr.ToString())





要序列化的类



Class to serialize

Public Class clsBrush
    Public Property BrushText As String
        Get
            Return _myBrush.ToString
        End Get
        Set(value As String)
            _myBrush = Brushes.AliceBlue
        End Set
    End Property
End Class





实际序列化:



Actual serialization:

<Grid
	Name="myGrid"
	Margin="0,0,0,30" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:wa="clr-namespace:WpfApp1;assembly=WpfApp1">
	<wa:MyRectangle
		Position="218.118443788084,112.190399478744,0,0">
		<wa:MyRectangle.Fill>
			<wa:clsBrush>#FFEEE8AA</wa:clsBrush>
		</wa:MyRectangle.Fill>
	</wa:MyRectangle>
</Grid>





序列化所需,trasform



Serialization desired, trasform

<wa:MyRectangle.Fill>
	<wa:clsBrush>#FFEEE8AA</wa:clsBrush>
</wa:MyRectangle.Fill>



in

Fill =#FFEEE8AA



所需输出


in
Fill="#FFEEE8AA"

Output desired

<Grid
	Name="myGrid"
	Margin="0,0,0,30" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:wa="clr-namespace:WpfApp1;assembly=WpfApp1">
	<wa:MyRectangle
		Position="218.118443788084,112.190399478744,0,0"
		Fill="#FFEEE8AA"/>
</Grid>

推荐答案

我想我理解你在问什么......这个 Google搜索 [ ^ ]发现: TutorialGenius.com:将任何WPF UIElement序列化和反序列化为XAML并返回! [ ^ ]
I think that I understand what you are asking... This Google Search[^] found this: TutorialGenius.com: Serialize and Deserialize any WPF UIElement to XAML and Back![^]


这篇关于属性中的序列化子类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆