C# WPF Richtextbox automatischen Zeilenumbruch verhindern?

Hallo Leute,
ich arbeite gerade an einer WPF-Anwendung und möchte verhindern, dass meine Richtextbox den Text automatisch umbricht.
Obwohl ich

VerticalScrollBarVisibility="Auto" 

gesetzt habe, wird der Text automatisch umgebrochen.Meine Richtextbox besitzt eine dynamische Größe, da ansonsten maximieren des Fensters schwer wird...Weder MaxWidth noch MinWidth helfen mir da weiter.Eine Eigenschaft um den automatischen Zeilenumbruch zu verhindern, habe ich noch nicht finden können.Weder im Netz, noch in den Eigenschaften.Meine Richttextbox sieht so aus:

<RichTextBox x:Name="rtbText"  HorizontalAlignment="Stretch"  Margin="10,85,10,95" VerticalAlignment="Stretch" MinWidth="300" FontSize="14" TextChanged="rtbText_TextChanged" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" >
                    <FlowDocument>
                        <Paragraph x:Name="pText">
                            <Run Text=""/>
                        </Paragraph>
                    </FlowDocument>
                </RichTextBox>

Gerne möchte ich die Richtextbox weiter verwenden, doch dazu müsste ich verhindern, dass die Zeilen Automatisch umgebrochen werden.

   Document.PageWidth = 1000

Möchte ich nicht nutzen, da die Scrollbar dann immer sichtbar ist.
Irgendwelche Vorschläge?

Programmieren, Programmierung
0 Antworten
Hallo könnt ihr mit diese beiden Codes Zeile für Zeile erklären?

#include <iostream>
#include <arpa/inet.h>
#include <sys/socket.h>
#include <unistd.h>
#include <string.h>

define BUFLEN 512

define PORT 9930

using namespace std;

int main(void) { struct sockaddr_in si_me={0}; struct sockaddr_in si_other={0}; int s, slen=sizeof(si_other); char buf[BUFLEN]; string rbuffer, sbuffer;

s=socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);

si_me.sin_family = AF_INET; si_me.sin_port = htons(PORT); si_me.sin_addr.s_addr = htonl(INADDR_ANY);

bind(s, (sockaddr*)&si_me, sizeof(si_me));

while (true) { memset(buf, 0, sizeof(buf)); // clear receive buffer recvfrom(s, buf, BUFLEN, 0, (sockaddr )&si_other, (socklen_t)&slen); rbuffer=buf; cout<<"received: "<<rbuffer<<" from "<<inet_ntoa(si_other.sin_addr)<<endl; sbuffer="I just received: "+rbuffer; sendto(s, sbuffer.c_str(), sbuffer.length(), 0, (sockaddr )&si_other, slen); } close(s); return 0; }

#include <iostream>
#include <arpa/inet.h>
#include <stdio.h>
#include <sys/socket.h>
#include <unistd.h>
#include <string.h>


define BUFLEN 512

define PORT 9930

define SRV_IP "127.0.0.1"

using namespace std;

int main(void) { struct sockaddr_in si_other={0}; int s, slen=sizeof(si_other); char buf[BUFLEN]; string buffer;

s=socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);

si_other.sin_family = AF_INET; si_other.sin_port = htons(PORT);

inet_aton(SRV_IP, &si_other.sin_addr);

cout << "Message: "; getline(cin, buffer); cout<<"sending buffer: "<<buffer<<endl; sendto(s, buffer.c_str(), buffer.length(), 0, (sockaddr *)&si_other, slen); memset(buf, 0, sizeof(buf)); // clear receive buffer recv(s, buf, BUFLEN, 0); cerr<<"received reply: "<<buf<<endl;

close(s); return 0; }

Falls sich jemand damit auskennt wäre ich euch sehr dankbar, im Prinzip verstehe ich die Funktionsweise der Codes, der erste Code ist ein Server der die Anfrage erhält und der zweite der Client der die Anfrage versendet. Jedoch sind mir hier einige Befehle nicht geläufig und ich wäre froh wenn mir jemand den Code Zeile für Zeile erklärt

Programmieren
1 Antwort

Meistgelesene Fragen zum Thema Programmieren