Как я обнаруживаю если Система. Windows. Формы. Маркировка с AutoEllipsis на самом деле отображает замещающий знак?

У меня есть Приложение Windows Forms, где я отображаю некоторые клиентские данные в Маркировке. Я установил маркировку. AutoEllipsis = верный.
Если текст длиннее, чем маркировка, он похож на это:

Some Text
Some longe... // label.Text is actually "Some longer Text"
              // Full text is displayed in a tooltip

который является тем, что я хочу.

Но теперь я хочу знать, использует ли маркировка функцию AutoEllipsis во времени выполнения. Как делают меня achive это?

Решение

Благодаря максимум Теперь я смог создать управление, которые пытаются приспособить целый текст в одной строке. Если кому-то интересно, вот код:

Public Class AutosizeLabel
    Inherits System.Windows.Forms.Label

    Public Overrides Property Text() As String
        Get
            Return MyBase.Text
        End Get
        Set(ByVal value As String)
            MyBase.Text = value

            ResetFontToDefault()
            CheckFontsizeToBig()
        End Set
    End Property

    Public Overrides Property Font() As System.Drawing.Font
        Get
            Return MyBase.Font
        End Get
        Set(ByVal value As System.Drawing.Font)
            MyBase.Font = value

            currentFont = value

            CheckFontsizeToBig()
        End Set
    End Property


    Private currentFont As Font = Me.Font
    Private Sub CheckFontsizeToBig()

        If Me.PreferredWidth > Me.Width AndAlso Me.Font.SizeInPoints > 0.25! Then
            MyBase.Font = New Font(currentFont.FontFamily, Me.Font.SizeInPoints - 0.25!, currentFont.Style, currentFont.Unit)
            CheckFontsizeToBig()
        End If

    End Sub

    Private Sub ResetFontToDefault()
        MyBase.Font = currentFont
    End Sub

End Class

Мог нуждаться в некоторой точной настройке (сделайте размер шага и минимальное значение настраивающимися со свойствами видимости разработчика), но это работает вполне прилично в настоящий момент.

6
задан KyleMit 16 January 2014 в 21:23
поделиться