C# 替换属性中的值
我有一个XML文件,我想把fit-to-max的值从false改为true。像这样:C# 替换属性中的值,c#,xml,replace,C#,Xml,Replace,我有一个XML文件,我想把fit-to-max的值从false改为true。像这样: <Hmi.Screen.TextField Name="Text Field_1" AggregationName="ScreenItems" ID="31"> <ObjectList> <Hmi.Screen.Property Name="Layer" AggregationName="Properties" ID="77"> <A
<Hmi.Screen.TextField Name="Text Field_1" AggregationName="ScreenItems" ID="31">
<ObjectList>
<Hmi.Screen.Property Name="Layer" AggregationName="Properties" ID="77">
<AttributeList>
<Value>0</Value>
</AttributeList>
</Hmi.Screen.Property>
<Hmi.Screen.Property Name="Left" AggregationName="Properties" ID="78">
<AttributeList>
<Value>264</Value>
</AttributeList>
</Hmi.Screen.Property>
<Hmi.Screen.Property Name="Top" AggregationName="Properties" ID="79">
<AttributeList>
<Value>48</Value>
</AttributeList>
</Hmi.Screen.Property>
<Hmi.Screen.Property Name="FitToLargest" AggregationName="Properties" ID="84">
<AttributeList>
<Value>false</Value>
</AttributeList>
</Hmi.Screen.Property>
</ObjectList>
</Hmi.Screen.TextField>
0
264
48
假的
根据此代码,我想将此部件表单更改为:
<Hmi.Screen.Property Name="FitToLargest" AggregationName="Properties" ID="84">
<AttributeList>
<Value>false</Value>
</AttributeList>
</Hmi.Screen.Property>
假的
为此:
<Hmi.Screen.Property Name="FitToLargest" AggregationName="Properties" ID="84">
<AttributeList>
<Value>true</Value>
</AttributeList>
</Hmi.Screen.Property>
真的
(假变真)
我想通过加载XML文件(我知道怎么做)来改变这一点,然后找到false并将其替换为true
这部分代码可以在每个文本字段中找到,但属性ID的值不同。我想为每个文本字段更改它。将XML文件加载到XDocument中,找到属性“Name”等于“fittolagest”的属性XElement,找到值XElement。听起来像是一个简单的LINQ到XML查询。你需要帮助做什么?到目前为止,您尝试了什么?我尝试删除此部分,但没有成功,我使用了以下代码:XDocument xml=XDocument.Load(loadLocation);xml.subjects().Elements(“Hmi.Screen.Property”)。其中(e=>e.Attribute(“Name=”).Value==“fittolagest”).Remove();Save(loadLocation);但是我认为把假改为真会更容易,因为它和删除它是一样的。这基本上是正确的。不要那样做,坚持你的问题并改进它。您仍在使用
“Name=“
”,请阅读注释。你已经有答案了。很抱歉,我复制了没有更改的版本