Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 调整Silverlight datagrid行的单元格高度?_C#_Silverlight_Datagrid_Resize - Fatal编程技术网

C# 调整Silverlight datagrid行的单元格高度?

C# 调整Silverlight datagrid行的单元格高度?,c#,silverlight,datagrid,resize,C#,Silverlight,Datagrid,Resize,我能够想出如何使用鼠标扩展和收缩datagrid的一列。但在收缩和膨胀柱后,细胞的高度并没有降低 如何获取单元格(或行)的原始高度? 你能调查一下吗 谢谢 AJ由于我无法在上找到此解决方案,所以我将在此处键入我的解决方案 您需要查找导致行大小错误的事件。在我的例子中,它只是上下滚动(但我已经在几种不同类型的事件中看到了这一点)。以下是使datagrid调整大小的代码: /// <summary> /// Reset datagrid row height //

我能够想出如何使用鼠标扩展和收缩datagrid的一列。但在收缩和膨胀柱后,细胞的高度并没有降低

如何获取单元格(或行)的原始高度? 你能调查一下吗

谢谢
AJ

由于我无法在上找到此解决方案,所以我将在此处键入我的解决方案

您需要查找导致行大小错误的事件。在我的例子中,它只是上下滚动(但我已经在几种不同类型的事件中看到了这一点)。以下是使datagrid调整大小的代码:

    /// <summary>
    /// Reset datagrid row height
    /// </summary>
    /// <param name="row"></param>
    public void ResetRowHeight(DataGrid grid, DataGridRow row)
    {
        // only for autosize rows
        if (!double.IsNaN(row.Height)) return;

        // store current rowheight
        double rowheight = grid.RowHeight;

        // fore recalculating row height
        grid.RowHeight = 0;
        row.UpdateLayout();

        // restore rowheight
        grid.RowHeight = rowheight;
        row.UpdateLayout();
    }
//
///重置数据网格行高度
/// 
/// 
public void ResetRowHeight(DataGrid grid,DataGridRow row)
{
//仅适用于自动调整行大小
如果(!double.IsNaN(行高))返回;
//存储当前行高
double rowheight=grid.rowheight;
//重新计算行高
grid.RowHeight=0;
row.UpdateLayout();
//恢复行高
grid.RowHeight=行高;
row.UpdateLayout();
}
其中grid是您的datagrid,row是需要重置的行


现在只需找到导致您的问题的事件,应该就是它。

因为我无法在上找到此解决方案,所以我将在此处键入我的

您需要查找导致行大小错误的事件。在我的例子中,它只是上下滚动(但我已经在几种不同类型的事件中看到了这一点)。以下是使datagrid调整大小的代码:

    /// <summary>
    /// Reset datagrid row height
    /// </summary>
    /// <param name="row"></param>
    public void ResetRowHeight(DataGrid grid, DataGridRow row)
    {
        // only for autosize rows
        if (!double.IsNaN(row.Height)) return;

        // store current rowheight
        double rowheight = grid.RowHeight;

        // fore recalculating row height
        grid.RowHeight = 0;
        row.UpdateLayout();

        // restore rowheight
        grid.RowHeight = rowheight;
        row.UpdateLayout();
    }
//
///重置数据网格行高度
/// 
/// 
public void ResetRowHeight(DataGrid grid,DataGridRow row)
{
//仅适用于自动调整行大小
如果(!double.IsNaN(行高))返回;
//存储当前行高
double rowheight=grid.rowheight;
//重新计算行高
grid.RowHeight=0;
row.UpdateLayout();
//恢复行高
grid.RowHeight=行高;
row.UpdateLayout();
}
其中grid是您的datagrid,row是需要重置的行


现在,只要找出导致您的问题的事件,应该就是它。

AJ,您找到过解决方案吗?AJ,您找到过解决方案吗?