2011-03-15 33 views
1

我有一个winform需要打印棋盘,我有一个表中有一些控件。我怎样才能让一个tablelayout不可见,然后在winforms中可见

我所做的就是将其设置隐形加载窗体时

private void Chess_Load(object sender, EventArgs e) 
{ 
    PromotionTable.Visible =false; 
} 

,然后使其可见,一旦功能被触发。

public void piecePromotionChange(Pieces[,] pieces, int rowEnd2, int columnEnd2, bool blackOrNot) 
{ 
    PromotionTable.Visible = true; 
} 

,但它仍然存在,无形:(

+0

@Fun Mun Pieng:我投了赞成你的编辑,虽然我个人认为SwDevMan81的原始编辑在两行分割函数参数更具可读性。侧面滚动并不好玩。 –

+0

简单的解释是,它实际上可见,但内容有问题,所以它不明显。更改BackColor属性以验证这一点。 –

回答

2

您需要使该部分屏幕无效/刷新。设置Visible属性不会触发重新编辑..

PromotionTable.Visible=true; 
PromotionTable.Invalidate(); 
myForm.Refresh(); 
+0

真棒,我会检查,你今晚给我提供的算法,并回答给你一个答案 –

+0

dammit,它仍然没有工作...... :( –

1

你可能彪其可见性设置为false负载

private void Chess_Load(object sender, EventArgs e) 
{ 
    PromotionTable.Visible = false; // false here 
} 

如果其不可见的,首先,你可能需要检查并确保将其添加到控件中。

+0

对不起,我拼错了,它应该是假的 –

相关问题