• c#控件编写 (1)自定义一个Label


    如果需要创建一个控件,要从UserControl、Control或者是Window窗体提供的其他类继承。

         UserControl适合用来做组合控件。Control需要自己实现控件的外观等等,但灵活性高。Windwos控件当然就是能够对现有的控件进行适当的扩展。

    1)实现最基本的Label,输出一段文字

        首先从Control继承一个类,这里我叫做XiLabel。我们实现下面的一段代码。在文字里面绘制出Text

    image

    编译一下,在一个Form上显示出来是下面的样子:

    image

    2)高度宽度跟这文字变化

       在绘制前先计算文字的高度和宽度 。

    image

    3)修改控件的编辑模式,在编辑器里面不能够改变控件的大小

       引入System.Windows.Forms.Design;命名空间 并写一个继承ControlDesigner的类,代码如下:

    ControlDesigner 为从 Control 派生的组件的设计器提供基类。除了从 ComponentDesigner 类继承的方法和功能外,ControlDesigner 还提供其他方法来支持在设计时扩展和改变关联的 Control 的行为。【MSDN】

    image

    然后在XiLabel的上方加入一下代码

    image

    好吧现在一个还算是完整的Label呈现在了我们的面前,是不是和自带的Label很类似呢。

    image

  • 相关阅读:
    RedHat Linux-配置YUM仓库
    04、管道符、重定向与环境变量
    03、新手必须掌握的Linux命令
    size_t
    decltype关键字
    python numpy使用笔记
    Huffman编码
    动态规划(dynamic programming)
    Prim算法
    Kruskal算法
  • 原文地址:https://www.cnblogs.com/ac1985482/p/2575725.html
Copyright © 2020-2023  润新知