---
title: "Problem med att visa formaterad text i Richtextbox"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/170945-problem-med-att-visa-formaterad-text-i-richtextbox"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "saw"
published: "2008-04-21T19:00:19.000Z"
updated: "2008-04-22T13:56:49.000Z"
replies: 2
views: 528
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/170945-problem-med-att-visa-formaterad-text-i-richtextbox"
---

# Problem med att visa formaterad text i Richtextbox

## #1 — saw, 2008-04-21T19:00Z

Tokig titel, men jag skulle behöva lite hjälp.
I princip så fungerar min kod, men inte fullt ut.
Denna kod ligger i muse_up händelsen.

```
bool bfet = ((richTextBoxEx1.SelectionFont.Style == FontStyle.Bold) ? 
toolStripButtonFet.Checked = true : toolStripButtonFet.Checked = false);

bool bkursiv = ((richTextBoxEx1.SelectionFont.Style == FontStyle.Italic) ? 
toolStripButtonKursiv.Checked = true : toolStripButtonKursiv.Checked = false);

bool bunderline = ((richTextBoxEx1.SelectionFont.Style == 
FontStyle.Underline) ? toolStripButtonUnderstuket.Checked = true : 
toolStripButtonUnderstuket.Checked = false);
```

Enskillt så fungerar allt, men inte ihop dvs om jag har en text som enbart är fet, eller enbart är kusiv eller enbart är understuken då fungerar allt.
Men är den både fet och kursiv, då fungerar den inte, ingen av knapparna 
trycks ner. Vad tror ni är felet?

Permalänk: https://www.webforum.nu/p/170945

## #2 — Gladh, 2008-04-22T06:40Z

Men om din text är både Fet och kursiv så kommer inget av dina vilkorssatser att vara sanna och ingen knapp kommer att vara nertryckt.

Jag misstänker att din SelectonFont.Style kan ha flera värden isig och du måste kontrollera detta och inte bara försöka jämföra mitt ett värd.

```
bool bfet = (((richTextBoxEx1.SelectionFont.Style & FontStyle.Bold) == FontStyle.Bold) ? 
toolStripButtonFet.Checked = true : toolStripButtonFet.Checked = false);

bool bkursiv = (((richTextBoxEx1.SelectionFont.Style & FontStyle.Italic) == FontStyle.Italic) ? 
toolStripButtonKursiv.Checked = true : toolStripButtonKursiv.Checked = false);

bool bunderline = (((richTextBoxEx1.SelectionFont.Style & FontStyle.Underline) == 
FontStyle.Underline) ? toolStripButtonUnderstuket.Checked = true : 
toolStripButtonUnderstuket.Checked = false);
```

Med hjälp av & gör du en bitvis AND och kan kontrollera om din SelectionFont.Style innehåller just det du vill kontrollera efter. Men som sagt det förutsätter att SelectionFont.Style kan innehålla flera värden, men det bör den kunna...

Sen kan du skriva om din kod så den blir lite kortare...

```
bool bfet = toolStripButtonFet.Checked = ((richTextBoxEx1.SelectionFont.Style & FontStyle.Bold) == FontStyle.Bold)
```

Och då toolStripButtonFet.Checked alltid kommer ha samma värde som bfet så finns det ju knappast någon anledning till att ha bfet med och du kan förkorta din kod ännu mer..

```
toolStripButtonFet.Checked = ((richTextBoxEx1.SelectionFont.Style & FontStyle.Bold) == FontStyle.Bold)
```

\- M

Permalänk: https://www.webforum.nu/p/2102450

## #3 — saw, 2008-04-22T13:56Z

Tack min vän, jag var inne lite åt ditt håll men kom aldrig i mål.
Det här blev dessutom en väldig snygg kod, om du lyssnar noga så hör du applåderna
ifrån Växjö.

Permalänk: https://www.webforum.nu/p/2102543

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/170945-problem-med-att-visa-formaterad-text-i-richtextbox
