Witam!
Mam textBox1.Text i chcę wiersze tekstu z tego obiektu zapisać w tablicy jednowymiarowej string[] tabStr - jak to zrobić?
Dzięki za pomoc.

- Rejestracja:ponad 21 lat
- Ostatnio:około 6 godzin
- Rejestracja:prawie 8 lat
- Ostatnio:prawie 8 lat
- Postów:2
Jeśli to zwykły łańcuch, to podziel go przez separator
string[] linie = text.Split(Environment.NewLine.ToCharArray());
Może jest jakaś gotowa metoda? Powinna być, ale może i nie być



- Rejestracja:około 17 lat
- Ostatnio:około 19 godzin
- Lokalizacja:Wrocław
A po co utrudniać sobie życie korzystając z .Text
?
string tabStr = textBox1.Lines



textbox.Text
to nie jest "proste odwołanie się do pola klasy"? textbox.Text
zazwyczaj skończy się delegacją do WinAPI z interop marshalingiem i PInvoke. W 99.5% przypadków różnica między narzutem splitowania napisu a PInvoke będzie się miała jak świeczka do płonącej serwerowni.

- Rejestracja:około 9 lat
- Ostatnio:dzień
- Postów:5138
**Patrz post niżej - john_klamka
**
Hej, nie jestem pewien, ale na pewno chcesz użyć textBox zamiast np. richTextBox jeżeli chcesz działać na linijkach?
Możesz to zrobić na kilka sposobów, ja wrzucę dwa i od razu zaznaczę, że nie jestem expertem.
Tablica + for:
int lines_count = richTextBox1.Lines.Length;
string[] lines_array = new string[lines_count];
for (int i = 0; i < lines_count; i++)
{
lines_array[i] = richTextBox1.Lines.ElementAt(i);
}
Lista + foreach:
List<string> lista = new List<string>();
foreach (string lines in richTextBox1.Lines)
{
lista.Add(lines);
}

- Rejestracja:prawie 9 lat
- Ostatnio:prawie 5 lat
- Postów:177
WeiXiao napisał(a):
Hej, nie jestem pewien, ale na pewno chcesz użyć textBox zamiast np. richTextBox jeżeli chcesz działać na linijkach?
Możesz to zrobić na kilka sposobów, ja wrzucę dwa i od razu zaznaczę, że nie jestem expertem.
To rozwiązanie jest redundantne :D
przecież wystarczy:
var lines_array = textBox1.Lines.ToList();


lines_array
dla zmiennej przechowującej listę.

- Rejestracja:około 14 lat
- Ostatnio:ponad 3 lata
- Postów:20
Dziękuję wszystkim za udzielone mi informacje!
Zrobiłem coś takiego w swoim programie do przeglądania właściwość komputerów zarejestrowanych w AD:
var lista_koncowa = "";
var lines_array = textBox1.Lines.ToList();
for (int i = 0; i < lines_array.Count(); i++)
{
if (lines_array[i]!="")
{
lista_koncowa= lista_koncowa + pAD.kompAD(lines_array[i]) + '\r' + '\n';
}
}
Zamiast tablicy użyłem listy z tym samym skutkiem, chodziło o przekazanie parametru do wywołania metody pAD.kompAD(string name) w pętli iteracyjnej.
Mam wrażenie, że kiedy 6 lat temu dużo trenowałem C#, to obiekty string i textBox.Text dawało się bez problemu załadować do tablicy array - chociaż, trochę czasu minęło i mogłem zapomnieć?
Teraz szukałem po Internecie i nic nie mogłem na ten temat znaleźć, przejścia z textBox.Text do array[n].
Jeszcze raz dziękuję za informacje i symatyczną atmosferę w wątku :-)
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.