• 解决statusStrip控件上的项目不能靠右对齐的问题


    在c#中用到了状态栏控件StatusStrip,但当我想把StatusStrip上某个StatusLabel靠右对齐时出了问题。  

    按照MSDN中的办法,是设置ToolStripStatusLabel的Alignment属性为Right。不过我在设计界面的属性窗口中找不到Alignment。

    就算加入代码toolStripStatusLabel2.Alignment = ToolStripItemAlignment.Right; 也还是没什么效果。

    后来我找到两种方法解决这个问题:

    方法一:

    在状态栏所有项目(StatusLabel、ProgressBar、DropDownButton等)前添加一个空白的StatusLabel (Text属性为空),并将其Spring属性设为True。

    Spring属性的作用是设置该项是否填满剩余空间,设为True以后,当程序运行时后面的项就都挤到右边,实现靠右对齐了。

    如果更进一步,需要一部分项靠左,一部分靠右,那就在两部分中间插入空白StatusLabel,同时设其Spring属性为True。

    这种方法比较简单,不用手工添加代码。首选!

    方法二:

    这个方法是我无意中发现的。

    设置StatusStrip控件的LayoutStyle属性为HorizontalStackWithOverflow 或 StackWithOverflow。

    然后在代码中修改状态栏上某项的Alignment为Right,这次就有靠右的效果了。

    例如:            this.toolStripStatusLabel1.Alignment = ToolStripItemAlignment.Right;

    注意如果是多个项,那靠左对齐的从左往右排列,靠右对齐的从右往左排列。

    问题是基本解决了,只是我还是不知道为什么在属性窗口里ToolStripStatusLabel没有Alignment属性。从网上搜集的帖子看,好像其他人都没这个问题啊?

    有谁知道的话告诉我。对了,我用的是VS2005 版本8.0.50727.42。

  • 相关阅读:
    ES6 数组下
    ES6 ---数组(上部分)
    ES6---函数
    ES6---字符串
    自适应网页设计(Responsive Web Design)
    HTML Meta中添加X-UA-Compatible和IE=Edge,chrome=1有什么作用?
    mysql潜在的危险kill
    shell脚本加密
    Linux安全知识总结
    nginx 解决400 bad request 的方法(转载)
  • 原文地址:https://www.cnblogs.com/gc2013/p/3914702.html
Copyright © 2020-2023  润新知