我是silverlight中的新手。我在
下面有一个小的xml文件<FlowActivities>
<SequenceFlow >
<FlowWriteLine>
hiiii
</FlowWriteLine>
</SequenceFlow>
</FlowActivities>
在这里我想在rootnode.like
中硬编码一些命名空间<FlowActivities x:Class="WorkflowConsoleApplication1.modify"
xmlns="http://schemas.microsoft.com/netfx/2009/xaml/activities"
mc:Ignorable="sap2010"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
sap2010:ExpressionActivityEditor.ExpressionActivityEditor="C#"
xmlns:sap2010="http://schemas.microsoft.com/netfx/2010/xaml/activities/presentation"
xmlns:sco="clr-namespace:System.Collections.ObjectModel;assembly=mscorlib"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<SequenceFlow >
<FlowWriteLine>
hiiii
</FlowWriteLine>
</SequenceFlow>
</FlowActivities>
获得这个我必须要做的事情......?请解决这个问题..?
答案 0 :(得分:1)
XAML不是当前的XML文件,是一种基于XML的语言。因此,您无法编写随机的,不存在的XML标记。
在SL XAML文件中对字符串进行硬编码:
<UserControl
x:Class="Test_SL_HardcodeString.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:system="clr-namespace:System;assembly=mscorlib" mc:Ignorable="d"
d:DesignHeight="300"
d:DesignWidth="400">
<UserControl.Resources>
<system:String x:Key="myString">This is a test string</system:String>
</UserControl.Resources>
<Grid x:Name="LayoutRoot" Background="White">
<TextBox Text="{StaticResource myString}"/>
</Grid>
</UserControl>
答案 1 :(得分:1)
你做不到。你必须设置像JoanComasFdz这样的变量。 如果必须使用相同的格式,则可以为例如创建单独的类(viewmodel)。 MyXMLData.cs读取和解析xml文件。读取XML节点并从此类中设置类变量“theString”。在XAML中,您可以在资源部分创建类的实例,并将Grid或文本框的数据上下文设置为该对象。
<UserControl
x:Class="Test_SL_HardcodeString.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:system="clr-namespace:System;assembly=mscorlib" mc:Ignorable="d"
xmlns:viewmodel="clr-namespace:MyNameSpace.ViewModels"
d:DesignHeight="300"
d:DesignWidth="400">
<UserControl.Resources>
<viewmodel:MyXMLData x:key="myxmldataclass"/>
</UserControl.Resources>
<Grid x:Name="LayoutRoot" Background="White" DataContext="{StaticResource myxmldataclass}" >
<TextBox Text="{StaticResource theString}"/>
</Grid>
</UserControl>