0
내가하려는 것은 창에 두 개의 열을 채우는 것입니다. 이 열은 전역 변수의 이름과 경로를 가지게됩니다. 창문에 필요한 것을 표시하는 데 문제가 있습니다.창의 열 채우기
<TabItem Header="Global Variables" GotFocus="GlobalVariablesTab_GotFocus">
<dc:TreeListView Name="tvwGlobalVariables" dc:ColumnLayoutManager.Enabled="True" >
<dc:TreeListView.Columns>
<!--First Column. -->
<dc:StdGridViewColumn Header="Variable" Width="200" >
<dc:StdGridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock TextTrimming="CharacterEllipsis"/>
</DataTemplate>
</dc:StdGridViewColumn.CellTemplate>
</dc:StdGridViewColumn>
<!-- Second Column-->
<dc:StdGridViewColumn Header="Result" dc:ColumnRange.IsFillColumn="True"/>
</dc:TreeListView.Columns>
</dc:TreeListView>
</TabItem>
이것은 채우기에 필요한 영역이있는 탭입니다. 이름의 첫 번째 열과 두 번째 열의 경로입니다. 나도 뭔가를 놓칠 수 있습니다.
private void GlobalVariablesTab_GotFocus(object sender, RoutedEventArgs e)
{
lvGlobals.Items.Clear();
sman = SchemaManager.SchemaManager.GetInstance();
IEnumerator enumerator = sman.GetGlobalVariableEnumerator();
while (enumerator.MoveNext())
{
DictionaryEntry entry = (DictionaryEntry) enumerator.Current;
ListViewItem lvi = new ListViewItem();//new string[] {entry.Key.ToString(), entry.Value.ToString()});
lvi.Tag = entry.Key.ToString() + entry.Value.ToString();
}
}
현재 나는 두 부분을 잡고 LVI을 가지고 있지만 나는 첫 번째 열에 다른 열에 다른 부분으로 이동 한 부분이 필요합니다. 내가 그것을 필요로하지 않는다면 나는 lvi를 지키려고하지 않는다. 어느 쪽이든 나는 entry.key
첫 번째 열에 표시하고 entry.value
두 번째에 표시해야합니다. 어떤 아이디어?
사람이 더 이상 정보를 바로 알려해야하는 경우, 난 내가 비록 관련 무엇인지 추가 그러나 나는 모든 이것에 대해 잘 모른다 그래서 그것은 단지 가정이었습니다. – Krill
일반 listview에 두 개의 열을 표시하는 코드를 제공 할 수 있습니다. 작동하지 않을 수도있는 독점적 인 TreeListView를 사용하기 때문에 코드에 어떤 문제가 있는지 알기가 어렵습니다. 하지만 당신의 코드를 살펴봄으로써 나는 두 가지 잠재적 인 문제점을 보았다. 먼저, CellTemplates에 대해 datatemplates를 사용하는 경우 ListViewItems을 사용하지 않고 데이터 바인딩을 사용하려고합니다. ListViewItems에 태그를 설정해도 아무 것도 표시되지 않습니다. –
2 개의 열은 모두 표시 할 수 있습니다. 어떻게 그 열을 설명하고 싶습니까? – Krill