我从存储过程中获取数据,这可以在datagrid中显示,但是设置列宽度会一直抛出一个空异常:
C = {rand(10,2), rand(20,2), rand(30,2), rand(40, 2), rand(50,2)};
dots = cellfun(@(x)dot(x(1:end-1,:), x(2:end, :), 2), C, 'uniform', 0)
[9x1 double] [19x1 double] [29x1 double] [39x1 double] [49x1 double]
完整代码:
str = "Prof. Dr. John Doe"
str.remove(/((Dr|Mr|Prof|Prin)\.? ?)/i)
设置ReadOnly并且单元格样式不会抛出错误,但设置宽度会出错。此代码与我对程序中的另一个数据网格所做的完全相同,后者从不同的过程中引入了更多列。我尝试格式化的程序现在没有任何空白值或其他任何内容。
修改 为清楚起见,这里是其他数据网格执行相同操作的代码完全正常。第二个数据网格也是第一个数据网格的副本,所以它的所有设置都是相同的(我还要检查以确保)
代码:
"John Doe"
答案 0 :(得分:10)
我遇到了这个确切的问题,偶然发现了这个不起眼的解决方案 在设置宽度之前设置列的 AutoSizeMode 。例如:
dataGridView2.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.None;
dataGridView2.Columns[0].Width = 60;
dataGridView2.Columns[0].ReadOnly = true;