2016-06-28 8 views
-1

Ich versuche, einen erweiterten Texteditor in C# zu machen. Ich habe derzeit eine ToolStripComboBox mit Schriftnamen gefüllt. Wenn der Benutzer auf den Namen klickt, sollte er SelectionFont auf diese Schriftart setzen. Es scheint jedoch keinen Effekt zu haben. (Ich habe auch einen für Schriftgröße, es funktioniert perfekt)Einstellung SelectionFont C#

Hier ist der Code für die Anwendung der Schrift:

private void toolStripComboBox1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    Font nf = new Font(toolStripComboBox1.SelectedIndex.ToString(), getCntDocument.SelectionFont.Size, getCurrentDocument.SelectionFont.Style); 
    getCurrentDocument.SelectionFont = nf; 
} 

Die Schriften zur Box hinzugefügt werden direkt aus der InstalledFontFamilies Systemklasse:

private void getFontCollection() 
{ 
    InstalledFontCollection ifonts = new InstalledFontCollection(); 
    foreach (FontFamily ff in ifonts.Families) 
    { 
     toolStripComboBox1.Items.Add(ff.Name); 
    } 
    toolStripComboBox1.SelectedIndex = 0; 
} 

auch ist getCurrentDocument folgendes:

private RichTextBox getCurrentDocument 
{ 
    get 
    { 
     return (RichTextBox)tabControl1.SelectedTab.Controls["Body"]; 
    } 
} 
Info

Zusätzlich:

private void formMain_Load(object sender, EventArgs e) 
{ 
    string[] args = System.Environment.GetCommandLineArgs(); 
    string filePath = args[1]; 
    filePath.Replace("\\\\", "\\"); 
    addTab(); 
    getFontCollection(); 
    setFontSizes(); 
    getCurrentDocument.Text = (File.ReadAllText(filePath)); 
} 

ich ein unsupportedFormatException

Könnte mir bitte jemand sagen, wo ich falsch gehe? Dank

+0

Mögliche Duplikate von [C# FontFamily zeigt keine neuen Fonts] (http://StackOverflow.com/questions/7910490/c-sharp-fontfamily-not-showing-new-fonts) – MethodMan

+0

@MethodMan Nein, weil das nicht funktioniert erklären, warum das nicht funktioniert, es zeigt, wie man sie zur Liste hinzufügt ... Ich habe sie bereits in einer Liste – criticaldiamonds

+0

Was ist 'getCntDocument'? Wie auch immer, vielleicht versuchen Sie mit dem Beispiel zuerst https://msdn.microsoft.com/en-us/library/system.windows.forms.richtbox.selectionfont#Anchor_2 – Slai

Antwort

-1

Also ich meine Antwort gefunden, stellt sich heraus, ich war nicht der Text die richtige Art und Weise bekommen ... Statt toolStripComboBox1.SelectedIndex.ToString() zu verwenden, hatte ich die ToolStripComboBox.ComboBox Variable zuerst verwenden, um die ts Combobox zu einem regelmäßigen Combobox zu konvertieren . So könnte ich toolStripComboBox1.ComboBox.GetItemText(toolStripComboBox1.ComboBox.SelectedItem)

Danke für die Hilfe aller!