我整个早上都在为此头疼。
我创建了一个带有文本框和列表框的用户控件。列表框应显示包含在文本框中输入的文本的所有项目。
它应该是一个具有类似搜索功能的组合框。
所有的搜索工作只有在调整列表框的大小时会在某个点失败,我无法弄清楚问题是什么。
下面的代码完美执行。但是在viewableRows = 1 时设置为 4lbresult
的高度无效lbresults
代码下面是控制台语句生成的输出
if (this.lbResults.Visible)
{
int viewableRows = this.lbResults.Items.Count;
Console.WriteLine(viewableRows.ToString());
if (viewableRows > this.maxItemsDisplayed)
{
viewableRows = this.maxItemsDisplayed;
}
Console.WriteLine(viewableRows.ToString());
int lbresults_height = ((viewableRows) * 15) ;
Console.WriteLine(lbresults_height);
this.ResizeControl(this.Width, this.txtSearch.Height + lbresults_height);
this.lbResults.Size = new Size(this.lbResults.Width, lbresults_height);
this.lbResults.Invalidate();
Console.WriteLine("Listbox Height: " + lbResults.Height.ToString());
}
else if(!this.lbResults.Visible)
{
this.ResizeControl(this.Width, this.txtSearch.Height);
}
输出:
1
1
15
列表框高度:4
我找不到任何应该将其设置为 4 的原因...
请帮我。