复选框上方的动态复选框文本
Dynamic checkBox text above checkbox
我目前正在创建动态复选框并将它们放在这样的面板上:
CheckBox chk = new CheckBox();
chk.Text = new DirectoryInfo(folder).Name;
chk.Location = new Point(10, i * 25);
panelSubfolders.Controls.Add(chk);
i++;
但是在面板上,复选框的文本不是直接在复选框的中间,而是在它的上方。我该如何解决?
奇怪的是,我添加的每个复选框都没有发生这种情况,有些看起来还不错。
与其仅创建复选框,不如尝试使用空文本动态创建复选框并动态创建 asp.net 标签分配文本。
最后你可以玩 css
尝试确保在为复选框指定文本之前设置了 AutoSize 属性。
CheckBox chk = new CheckBox();
chk.AutoSize = true;
chk.Text = new DirectoryInfo(folder).Name;
chk.Location = new Point(10, i * 25);
panelSubfolders.Controls.Add(chk);
i++;
否则,您可能必须根据使用文本长度计算大小(以像素为单位)的计算自行设置复选框的大小。
我目前正在创建动态复选框并将它们放在这样的面板上:
CheckBox chk = new CheckBox();
chk.Text = new DirectoryInfo(folder).Name;
chk.Location = new Point(10, i * 25);
panelSubfolders.Controls.Add(chk);
i++;
但是在面板上,复选框的文本不是直接在复选框的中间,而是在它的上方。我该如何解决? 奇怪的是,我添加的每个复选框都没有发生这种情况,有些看起来还不错。
与其仅创建复选框,不如尝试使用空文本动态创建复选框并动态创建 asp.net 标签分配文本。
最后你可以玩 css
尝试确保在为复选框指定文本之前设置了 AutoSize 属性。
CheckBox chk = new CheckBox();
chk.AutoSize = true;
chk.Text = new DirectoryInfo(folder).Name;
chk.Location = new Point(10, i * 25);
panelSubfolders.Controls.Add(chk);
i++;
否则,您可能必须根据使用文本长度计算大小(以像素为单位)的计算自行设置复选框的大小。