我正在寻找一种方法,将SelectedItems
从DataGrid
转换为逗号分隔的字符串,该字符串可以传递到自动化流程中。
在我的代码中,我有一个DataGrid1
,然后是第二个DataGrid2
,它与第一个列表中的SelectedItems
绑定。然后绑定到第二个列表的TextBox
的{{1}}。
这是我的Items
:
DataGrid
然后使用以下绑定<{1}}绑定到<!-- items source based on selection of another data grid -->
<DataGrid x:Name="MyDataGrid2" ItemsSource="{Binding ElementName=MyDataGrid,Path=SelectedItems}" AutoGenerateColumns="False" SelectionMode="Extended" Grid.Row="1" Height="Auto" Width="Auto" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<DataGrid.Columns>
<DataGridTextColumn Header="Items" Width="Auto" >
<DataGridTextColumn.Binding>
<MultiBinding StringFormat="{}{0},{1},{2};">
<Binding XPath="ProjectOrderNo"/>
<Binding XPath="Style" />
<Binding XPath="CustomerNo" />
</MultiBinding>
</DataGridTextColumn.Binding>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
Items
结果是TextBox
显示&#34;(收集)&#34;。我不确定如何将(Collection)解析为逗号分隔的字符串。这可以由<TextBox x:Name="txt0" Text="{Binding ElementName=MyDataGrid2,Path=Items, Mode=OneWay}" Height="Auto" Width="Auto" />
处理吗?
该字符串应格式为:
TextBox
,Converter
,Orderno
; customerNo
,ItemNo
,Orderno
;
可以由customerNo
处理,但没有任何运气在ItemNo
中处理要处理的项目..
这是我的第一次尝试:
StringBuilder