【问题标题】:Silverlight Copy Cell ContentSilverlight 复制单元格内容
【发布时间】:2012-10-15 22:27:14
【问题描述】:

我需要允许用户从 DataGrid(Silverlight SDK)复制单元格内容。

目前Datagrid通过代码绑定到数据。

记录被加载到 ObservableCollection,然后到 PagedCollectionView,最后被设置为 Dataggrid 的 ItemsSource

我面临的问题是当我改变时

IsReadOnly = "假"

对于 Datagrid,用户可以复制单元格的内容。但是,如果他们错误地对单元格进行了任何小的更改,则更改会自动提交,这是上升异常,因为记录是只读的。

所以我想要实现的只是让用户能够复制单元格内容,但仍将其保持为只读。

我不介意缓存记录是否在客户端发生更改,但只是不想允许将更改提交给服务并引发不必要的异常..

干杯

【问题讨论】:

    标签: silverlight silverlight-5.0


    【解决方案1】:

    您可以使用包含只读文本框的 sdk:DataGridTemplateColumn 为每列创建一个模板。

    <sdk:DataGrid>
      <sdk:DataGrid.Columns>
        <sdk:DataGridTemplateColumn Header="My Header" Width="80">
          <sdk:DataGridTemplateColumn.CellTemplate>
            <DataTemplate>
               <TextBox BorderBrush="Transparent" Text="{Binding Path=MyProperty}" Height="25" HorizontalAlignment="Stretch" IsReadOnly="True"/>
            </DataTemplate>
          </sdk:DataGridTemplateColumn.CellTemplate>
        </sdk:DataGridTemplateColumn>
      </sdk:DataGrid.Columns>
    </sdk:DataGrid>
    

    你应该可以复制出单元格。

    【讨论】:

    • 这很好。是否可以将此作为附加模板应用于数据网格而不是每列的所有列(文本)?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-14
    • 1970-01-01
    相关资源
    最近更新 更多