0
有datgrid與動態列數,這樣的:WPF複選框排
<DataGrid DataGridCell.Selected="DataGrid_GotFocus" EnableColumnVirtualization="true" EnableRowVirtualization="true" Name="dataGrid1" DockPanel.Dock="Top" AutoGenerateColumns="False"
Height="120" Width="Auto" CanUserReorderColumns="False" CanUserResizeColumns="False" CanUserAddRows="false" CanUserResizeRows="False" CanUserSortColumns="False" CellEditEnding="dataGrid1_CellEditEnding">
</DataGrid>
for (var i = datetime; i < datetime.AddDays(1); i += TimeSpan.FromHours(1))
{
var column = new DataGridTemplateColumn();
column.Header = (i.Hour + 1).ToString();
column.Width = 30;
column.CellTemplate = (DataTemplate)XamlReader.Load(
new MemoryStream(Encoding.Default.GetBytes(
@"<DataTemplate xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'><TextBlock Text='{Binding ValuesExtended[" + i.Hour + @"].value_nullable, UpdateSourceTrigger=PropertyChanged}'/></DataTemplate>"
)));
column.CellEditingTemplate = (DataTemplate)XamlReader.Load(
new MemoryStream(Encoding.Default.GetBytes(
@"<DataTemplate xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'><TextBox Text='{Binding ValuesExtended[" + i.Hour + @"].value_nullable, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}'/></DataTemplate>"
)));
dataGrid1.Columns.Add(column);
}
dataGrid1.ItemSource = data;
現在我想一個特殊一行復選框而不是文本,我該怎麼辦呢? 谷歌搜索的例子,只發現複選框列。
在每行中只有複選框?有沒有約束力?你能否解釋一下你想在這一行中取得什麼成就。 – blindmeis 2012-07-12 06:12:20
是的。與綁定,只有複選框。想要將double值0-1轉換爲true或false,並將其作爲複選框傳遞給datagrid。 – 2012-07-12 08:57:41