0

我有一个网格,它在特定列上显示一些数据分组。 我想将 Grid Column Value 设置为 DataTemplate 的 TextEdit 并将 DataTemplate 绑定到 Description 列。怎么办?

protected void GetAllInfills()
{
    List<Infill> infillList = new List<Infill>();
    infillList=BLL.GetAllInfills();
    if (infillList != null)
    {
        grdInfill.ItemsSource = infillList;
        grdInfill.GroupBy(grdInfill.Columns["GlassType"], ColumnSortOrder.Ascending);
        grdInfill.GroupBy(grdInfill.Columns["GlassDescription"], ColumnSortOrder.Ascending);
        grdInfill.AutoExpandAllGroups = true;
    }

}
 <Window.Resources>

        <DataTemplate x:Key="descriptionHeader">
            <Border BorderBrush="Black"  BorderThickness="1" Width="1300">
                <StackPanel Orientation="Vertical" Margin="5,5,1,5">
                    <TextBlock Name="txtdescTitle" FlowDirection="LeftToRight" VerticalAlignment="Top"  HorizontalAlignment="Left" Text="{Binding ElementName = desc, Path = DataCell}" Width="200" TextWrapping="Wrap"  /> <!--"Glass 1 description 1* INSULATED"-->
                    <StackPanel Orientation="Horizontal" Margin="5" Height="80">
                        <Image Source=".\Images\description_img.png"  Stretch="None" FlowDirection="LeftToRight" VerticalAlignment="Top" HorizontalAlignment="Left" Margin="1"/>
                        <StackPanel Orientation="Vertical" Margin="2">
                            <TextBlock Name="txtdesc1" Margin="2" FlowDirection="LeftToRight" Text="OL:1/4' Bronze-Tempered-Solar Ban #60"  TextWrapping="Wrap"  />
                            <TextBlock Name="txtdesc2" Margin="2" FlowDirection="LeftToRight" Text="AS:1/2' Air Space with Argon"  TextWrapping="Wrap"  />
                            <TextBlock Name="txtdesc3" Margin="2" FlowDirection="LeftToRight" Text="IL:1/4' Float-Clear"  TextWrapping="Wrap"  />
                        </StackPanel>
                    </StackPanel>
                </StackPanel>

            </Border>

        </DataTemplate>
    </Window.Resources>
    <dxg:GridControl Name="grdInfill"  Height="700" VerticalAlignment="Top">
        <dxg:GridControl.Columns>

            <dxg:GridColumn FieldName="GlassType" AllowEditing="False"  />
            <dxg:GridColumn Name="desc"  FieldName="GlassDescription"   AllowEditing="False" Width="20"  GroupValueTemplate="{StaticResource descriptionHeader}"/>
            <dxg:GridColumn FieldName="GlassType" AllowEditing="False" />
            <dxg:GridColumn Name="qty" FieldName="Quantity" AllowEditing="False"  />
            <dxg:GridColumn FieldName="Width" AllowEditing="False" Header="Length"/>
            <dxg:GridColumn FieldName="Height" AllowEditing="False"/>
            <dxg:GridColumn FieldName="Elevation" AllowEditing="False"/>
 </dxg:GridControl.Columns>
  <dxg:GridControl.View>
            <dxg:TableView ShowTotalSummary="True" AutoWidth="True" DetailHeaderContent="True" ShowGroupPanel="False" ShowIndicator="False"/>
        </dxg:GridControl.View>
    </dxg:GridControl>

帮助赞赏!谢谢!

4

1 回答 1

0

您可以尝试以这种方式使用模板吗:

<dxg:GridColumn Name="desc"  FieldName="GlassDescription"   AllowEditing="False" Width="20">
    <dxg:GridColumn.CellTemplate>
        <DataTemplate>
            <Border ...>
            </Border>
        </DataTemplate>
    </dxg:GridColumn.CellTemplate>
</dxg:GridColumn>
于 2013-05-23T09:34:08.017 回答