Feedback

C# - WPF Font von WinForms Font

Veröffentlicht von am 11/13/2012
(0 Bewertungen)
Interpretiert für ein Font unterstützendes Element den WinForms Standard Font in einen Windows.Media.Font.
/// <summary>
/// Legt den Font für ein WPF Font unterstützendes Element fest, anhand eines System-Fonts.
/// </summary>
/// <param name="element">Zielelement, das Fon unterstützt</param>
/// <param name="systemFont">System Font</param>
private void setFont(UIElement element, System.Drawing.Font systemFont)
{
    TextBlock tbElement = (element as TextBlock);
    Label lbElement = (element as Label);

    if (tbElement != null)
    {
        tbElement.FontFamily = new System.Windows.Media.FontFamily(systemFont.Name);
        tbElement.FontSize = systemFont.Size;
        tbElement.FontStretch = FontStretches.Normal;
        tbElement.FontStyle = (systemFont.Style == System.Drawing.FontStyle.Italic ? FontStyles.Italic : FontStyles.Normal);
       tbElement.FontWeight = (systemFont.Style == System.Drawing.FontStyle.Bold ? FontWeights.Bold : FontWeights.Normal);
    }
    else if (lbElement != null)
    {
        lbElement.FontFamily = new System.Windows.Media.FontFamily(systemFont.Name);
        lbElement.FontSize = systemFont.Size;
        lbElement.FontStretch = FontStretches.Normal;
        lbElement.FontStyle = (systemFont.Style == System.Drawing.FontStyle.Italic ? FontStyles.Italic : FontStyles.Normal);
        lbElement.FontWeight = (systemFont.Style == System.Drawing.FontStyle.Bold ? FontWeights.Bold : FontWeights.Normal);
    }
}

1 Kommentare zum Snippet

aha47 schrieb am 11/15/2012:
Die Verwendung der is-as-Konstruktion ist unnötig,
TextBlock tbElement = element as TextBlock
reicht.
 

Logge dich ein, um hier zu kommentieren!