[英]WPF DataGrid XML Binding and 1 Column for status that changes every 5 seconds
抱歉,標題令人迷惑!
這是我的XML文件:
<?xml version="1.0" encoding="utf-8"?>
<Clients>
<Client Name="ATCI-105">
<IP>10.0.2.105</IP>
<MAC>00:00:00:00:00:00</MAC>
</Client>
</Clients>
在我的WPF視圖中,我有一個DataGrid,它具有與XmlDataProvider的綁定。 我想要的是當我對Client
ping操作並收到響應時,希望它顯示在我的DataGrid狀態列中而不將其添加到XML文件中,因為我每5秒檢查一次狀態。
<DataGrid Grid.Row="0" x:Name="dgClients" x:FieldModifier="public" ItemsSource="{Binding Path=Elements[Client]}" AutoGenerateColumns="False"
HeadersVisibility="Column" GridLinesVisibility="None" AlternatingRowBackground="WhiteSmoke" IsReadOnly="True">
<DataGrid.Columns>
<DataGridTextColumn Header="Name" Width="*" Binding="{Binding Path=Attribute[Name].Value}"/>
<DataGridTextColumn Header="IP" Width="*" Binding="{Binding Path=Element[IP].Value}"/>
<DataGridTextColumn Header="MAC" Width="*" Binding="{Binding Path=Element[MAC].Value}"/>
<DataGridTextColumn Header="Status" Width="140"/>
</DataGrid.Columns>
</DataGrid>
有一個好的方法嗎? 如果您不明白我想要什么,請告訴我,我將盡力解釋更多。
問候,科恩
如果“ Ping結果”列的數據不是來自XML文件...,那么就不要在該列中顯示XML文件中的數據。 在視圖模型的該列中創建string
s或您正在使用的任何數據類型的集合,或在其后進行代碼綁定。
更好的是,只需在后面的代碼中從XML文件中讀取初始值,然后填充專門為此目的設計的類。 將代表數據的這些類實例的集合添加到視圖模型或代碼中,然后按常規綁定到該模型。 更新其中的任何部分將變得輕而易舉。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.