ฉันสามารถ:
- จัดข้อความให้ชิดขวาในคอลัมน์ ID
- ทำให้แต่ละคอลัมน์มีขนาดอัตโนมัติตามความยาวข้อความของเซลล์ด้วยข้อมูลที่มองเห็นได้นานที่สุด?
นี่คือรหัส:
<ListView Name="lstCustomers" ItemsSource="{Binding Path=Collection}">
<ListView.View>
<GridView>
<GridViewColumn Header="ID" DisplayMemberBinding="{Binding Id}" Width="40"/>
<GridViewColumn Header="First Name" DisplayMemberBinding="{Binding FirstName}" Width="100" />
<GridViewColumn Header="Last Name" DisplayMemberBinding="{Binding LastName}"/>
</GridView>
</ListView.View>
</ListView>
คำตอบบางส่วน:
ขอบคุณ Kjetil GridViewColumn.CellTemplate ทำงานได้ดีและความกว้างอัตโนมัติทำงานได้แน่นอน แต่เมื่อ "Collection" ของ ObservativeCollection ได้รับการอัปเดตด้วยข้อมูลที่มีความยาวมากกว่าคอลัมน์ขนาดคอลัมน์จะไม่อัปเดตตัวเองดังนั้นจึงเป็นเพียงวิธีแก้ปัญหาสำหรับ การแสดงข้อมูลเบื้องต้น:
<ListView Name="lstCustomers" ItemsSource="{Binding Path=Collection}">
<ListView.View>
<GridView>
<GridViewColumn Header="ID" Width="Auto">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Id}" TextAlignment="Right" Width="40"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="First Name" DisplayMemberBinding="{Binding FirstName}" Width="Auto" />
<GridViewColumn Header="Last Name" DisplayMemberBinding="{Binding LastName}" Width="Auto"/>
</GridView>
</ListView.View>
</ListView>