Microsoft Visual Studio对象

时间:2011-08-30 08:47:18

标签: visual-studio-2010 visual-studio-2008 c#

你好可以创建一个像按钮一样运作的对象吗?

因为我正在为酒店制作房间管理系统,经理要我给房间的图形表示。我认为如果我创建一个代表房间的对象(例如矩形),那将是用户友好的,因为我认为如果我在其中放置许多按钮太糟糕了。 (它的眼睛太痛苦了。)

该对象应该是可点击的,因为当用户点击或双击它时。房间的详细信息会出现。

非常感谢...

3 个答案:

答案 0 :(得分:0)

是的,确实如此。所有控件(只要它们继承自Control,基本上所有UI元素都有)具有Click-Event,您可以注册,以便在单击时得到通知。

如果您告诉我您使用的是WinForms还是WPF,我可以举例说明如何绘制自定义Clickabel对象。

答案 1 :(得分:0)

您可以设置按钮的大小来表示房间,也可以捕获您想要用来表示房间的任何元素的Click事件,例如Panel

您还可以创建一个继承自控件并实现更多功能的类,这样就可以轻松地重用它。例如:

public class Room : Panel {

  // perhaps something to keep track of what room it is
  private int _id;

  // a constructor that sets the data that you need
  public Room(int id) {
    _id = id;
  }

  protected override OnClick(EventArgs e) {
    // here you can handle the click
  }

}

答案 2 :(得分:0)

您创建一个将继承自Control的对象,并使用System.Drawing执行自定义绘图代码,这是一项非常简单的任务。使用Control,您会看到常规活动,例如MouseDownMouseUpMouseEnterMouseLeaveOnPaintPaintBackground。如果你添加效果,这些是你想要的事件。