解决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。

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

时间: 2024-08-24 07:52:35

解决statusStrip控件上的项目不能靠右对齐的问题的相关文章

StatusStrip控件中,ToolStripStatusLabel的位置

在c#中用到了状态栏控件StatusStrip,但当我想把StatusStrip上某个StatusLabel靠右对齐时出了问题. 按照MSDN中的办法,是设置ToolStripStatusLabel的Alignment属性为Right.不过我在设计界面的属性窗口中找不到Alignment. 就算加入代码toolStripStatusLabel2.Alignment = ToolStripItemAlignment.Right; 也还是没什么效果. 后来我找到两种方法解决这个问题: 方法一: 在状

C# 多线程修改控件时,提示在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke

一般在多线程调用UI控件时,涉及到跨线程修改UI,需要使用委托,比如如下: this.Invoke((MethodInvoker)delegate { btnRefresh.Enabled = true; }); 但是假如在多线程操作还没完成的时候,我就提前关闭窗体,则会引发InvalidOperationException,提示 “在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke” ,并且如果没有捕获到,则可能导致程序崩溃,直接关闭. 百度之后,发现需要判断控件的

解决Select2控件不能在jQuery UI Dialog中不能搜索的bug

本文使用博客园Markdown编辑器进行编辑 1.问题呈现 项目中使用了jQuery UI的Dialog控件,一般用来处理需要提示用户输入或操作的简单页面.逻辑是修改一个广告的图片和标题. 效果截图如下: 使用Select2,主要是因为它支持下拉式搜索.所以在数据稍微多一点,作为搜索选择功能的首选.但是运行出来之后,发现搜索框无法点击.开始想到的index不够大,被其他的元素覆盖了.但是跳转z-index也无法解决.在普通的页面,搜索框是ok的. 2.解决办法 通过Google搜索,发现sele

Android控件上添加图片

项目中有一个点赞功能,点赞的小图标添加在点赞列表旁边,在xml里可以进行设置,也可以在代码中进行绘图. 下面是两种方法的设置: 1.xml里:一些控件:button.textView等等里面有个属性是android:drawableLeft 就可以将pic设置到text的左边.good.... 2.代码中: TextView txtlikedList = new TextView(this.getContext()); Drawable drawable= getResources().getD

在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke

今天关闭一个窗体,报出这样的一个错误"在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke.",这个不用多想,肯定是那个地方没有释放掉.既然碰到这个问题,先不说问题本身,来说说其他的一些事情.winform最常见的是datagridview这个控件,不管重写还是怎么,很多数据的操作都是用datagridview来展示的,因此,它的异步调用也算是比较多的一类了.比如:1 从数据库中读取大量数据(所谓的分页读取不在这个范畴)2 操作datagridview,然后一

支持各种控件上/下拉刷新的android-pulltorefresh

android- pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新,如ListView.ViewPager.WevView. ExpandableListView.GridView.(Horizontal) ScrollView.Fragment上下左右拉动刷新.并且他 实现的下拉刷新ListView在item不足一屏情况下也不会显示刷新提示,体验很好. 特性 直接上拉.下拉刷新,也可以从底层直接回到顶部. 滑动动画通配所有的设备. 支持Android 2.3 版本之

在创建窗口句柄之前,不能在控件上调用 Invoke 或 BeginInvoke。

public partial class UCInfo : UserControl { public UCInfo() { InitializeComponent(); } ManualResetEvent neverSetEvt = new ManualResetEvent(false); delegate void InvokeDelegate(); public void SetInfo(string info) { lblInfo.Invoke(new InvokeDelegate(()

如何在双向绑定的Image控件上绘制自定义标记(wpf)

原文:如何在双向绑定的Image控件上绘制自定义标记(wpf) 我们的需求是什么? 答:需要在图片上增加一些自定义标记,例如:2个图片对比时,对相同区域进行高亮. 先上效果图: 设计思路 1.概述 1.通过TargeUpdated事件,重新绘制图片进行替换. 2.详细实现 1.我们先绑定ImageTargetUpdated事件. ? 1 <Image x:Name="DestImageControl" Source="{Binding Path=Source.Url,

MFC中如何将焦点设置到指定控件上

抄的:https://blog.csdn.net/libaineu2004/article/details/24377105?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task 我们常常会有这样的需求,想在窗口打开的时候就将焦点(光标)设置到某个指定的控件上去.我们都知道设置焦点需要用到setFocus这个方法(几乎任何编程环境都这样VC,C#,VB,VF都