我正在用C#和.Net 2.0进行开发。我有一个用户控件,它根据单元格的最大数量绘制单元格(柱状)。有一些绘图例程生成必要的单元格。有一个属性NumberOfCells调整此控件的高度;CELLHEIGHT_CONSTANT * NumberOfCells。OnPaint()方法被重写(绘制单元格数的代码)。
还有另一个用户控件,它包含一个面板,其中包含上面的userControl1。有一个属性NumberCells可以更改userControl1 1的NumberOfCells。
然后将UserControl2放在windows窗体上。该表单上有一个NumericUpDown控件(只从1增加)。当用户增加1时,我也会调整VerticalScroll.Maximum 1。
一切运行良好和良好,但当我增加一次,面板更新很好(必要时插入垂直滚动),但没有添加单元格!我在userControl2和表单上尝试过无效,但是似乎没有什么能吸引新添加的单元格。
如能提供任何协助,我们将不胜感激。提前谢谢你。
发布于 2010-04-28 21:13:18
尝试调试并检查是否正确设置了NumberOfCells属性。如果是,并且在窗口失效后单元格仍未显示(例如,通过最小化然后恢复窗口),则单元格绘制方法会出现问题。
如果在最小化/还原单元格之后出现,则需要在设置器中调用Invalidate(CellRegion)以获取NumberOfCells
发布于 2010-04-28 21:29:23
添加列时是否调整控件的大小?如果它们不够大,不足以显示它们的全部内容,那么它们将简单地剪裁它们,您可能不会看到任何已经添加的新列。
https://stackoverflow.com/questions/2733031
复制相似问题