• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

[WPF] Formatowanie TextBoxa w behind-code

Object Storage Arubacloud
0 głosów
293 wizyt
pytanie zadane 4 czerwca 2018 w C# przez polsky Nowicjusz (230 p.)
edycja 4 czerwca 2018 przez polsky

Hej;
Potrzebuje zedytowac wyglad trzcionki w textboxie. Niestety nie wszystko sie udaje :(

Kod XAML:

        <Grid Grid.Column="0" Background="#FF85B959" Margin="0,0,0,0">
            <Image  Name="Logo_0_0"  HorizontalAlignment="Center" VerticalAlignment="Center"></Image>
            <Image  Name="Stan_0_0"  HorizontalAlignment="Left" VerticalAlignment="Top" Stretch="None" ></Image>
            <TextBox Name="TBNo_0_0"  Background="#FF85B959"  FontFamily="Times New Roman" />
            <Image  Name="Pilka_0_0"  HorizontalAlignment="Left" VerticalAlignment="Bottom" Stretch="None" ></Image>
        </Grid>
        <Grid Grid.Column="1" Background="#FF85B959" Margin="0,0,0,1">
            <Image  Name="Logo_0_1"  HorizontalAlignment="Center" VerticalAlignment="Center"></Image>
            <Image  Name="Stan_0_1"  HorizontalAlignment="Left" VerticalAlignment="Top" Stretch="None" ></Image>
            <TextBox Name="TBNo_0_1"  Background="#FF85B959" FontFamily="Times New Roman" />
            <Image  Name="Pilka_0_1"  HorizontalAlignment="Left" VerticalAlignment="Bottom" Stretch="None" ></Image>
        </Grid>
        <Grid Grid.Column="2" Background="#FF85B959" Margin="0,0,0,1">
            <Image  Name="Logo_0_2"  HorizontalAlignment="Center" VerticalAlignment="Center"></Image>
            <Image  Name="Stan_0_2"  HorizontalAlignment="Left" VerticalAlignment="Top" Stretch="None" ></Image>
            <TextBox Name="TBNo_0_2"  Background="#FF85B959"  FontFamily="Times New Roman" />
            <Image  Name="Pilka_0_2"  HorizontalAlignment="Left" VerticalAlignment="Bottom" Stretch="None" ></Image>
        </Grid>

Kod c#:

       public MainWindow()
        {
            InitializeComponent();

            TBNo_0_0 = StylTekstu(0, 0);
            TBNo_0_1 = StylTekstu(0, 1);
            TBNo_0_2 = StylTekstu(0, 2);

        }

        TextBox[,] txtBox = new TextBox[0, 3];

        public TextBox StylTekstu(int i, int j)

        {
            txtBox[i, j].Text = "6";     

            txtBox[i, j].FontSize = 13;
            txtBox[i, j].FontWeight = FontWeights.Bold;
            txtBox[i, j].Foreground = Brushes.Red;
            txtBox[i, j].VerticalAlignment = VerticalAlignment.Center;
            txtBox[i, j].HorizontalAlignment = HorizontalAlignment.Center;
            txtBox[i, j].TextAlignment = TextAlignment.Center;
            txtBox[i, j].BorderBrush = Brushes.White;

            return txtBox[i, j];
        }

Dlaczego metoda StylTekstu nie przekazuje obiektu txtBox do textboxa TBNo_0_0 ?

Dzieki za pomoc

komentarz 4 czerwca 2018 przez NowyUrzydgownig Mądrala (5,090 p.)
Nic nie widze.
komentarz 4 czerwca 2018 przez polsky Nowicjusz (230 p.)
Problem jest prawdopodobnie ze sposobem wpisywania  w C# właściwości textboxa, bo przy debugowaniu jak sprawdziłem watości obiektu ( czcionke i wartośc stringa wpisana do textboxa) to wartosci sa domyślne ( czcionka 12 zamiast 13 a string jest pusty a nie rowny "6")  Jak prawidłowo wpisać własciwości textboxa w C# ?
komentarz 4 czerwca 2018 przez NowyUrzydgownig Mądrala (5,090 p.)
Mysle, ze to jednak cos z forum.
komentarz 4 czerwca 2018 przez polsky Nowicjusz (230 p.)
Nie widzisz mojego kodu? czy o co chodzi?
komentarz 4 czerwca 2018 przez NowyUrzydgownig Mądrala (5,090 p.)
Odpal czarna wersje strony to zobaczysz. Kod jest napisany szarym na czarnym. Nie wiem kto to projektowal, chyba daltonista jakis.
komentarz 4 czerwca 2018 przez polsky Nowicjusz (230 p.)
Kod XAML:

   <Grid Grid.Column="0" Background="#FF85B959" Margin="0,0,0,0">
            <Image  Name="Logo_0_0"  HorizontalAlignment="Center" VerticalAlignment="Center"></Image>
            <Image  Name="Stan_0_0"  HorizontalAlignment="Left" VerticalAlignment="Top" Stretch="None" ></Image>
            <TextBox Name="TBNo_0_0"  Background="#FF85B959"  FontFamily="Times New Roman" />
            <Image  Name="Pilka_0_0"  HorizontalAlignment="Left"

VerticalAlignment="Bottom" Stretch="None" ></Image>
        </Grid>
        <Grid Grid.Column="1" Background="#FF85B959" Margin="0,0,0,1">
            <Image  Name="Logo_0_1"  HorizontalAlignment="Center" VerticalAlignment="Center"></Image>
            <Image  Name="Stan_0_1"  HorizontalAlignment="Left" VerticalAlignment="Top" Stretch="None" ></Image>
            <TextBox Name="TBNo_0_1"  Background="#FF85B959" FontFamily="Times New Roman" />
            <Image  Name="Pilka_0_1"  HorizontalAlignment="Left" VerticalAlignment="Bottom" Stretch="None" ></Image>
        </Grid>
        <Grid Grid.Column="2" Background="#FF85B959" Margin="0,0,0,1">
            <Image  Name="Logo_0_2"  HorizontalAlignment="Center" VerticalAlignment="Center"></Image>
            <Image  Name="Stan_0_2"  HorizontalAlignment="Left" VerticalAlignment="Top" Stretch="None" ></Image>
            <TextBox Name="TBNo_0_2"  Background="#FF85B959"  FontFamily="Times New Roman" />
            <Image  Name="Pilka_0_2"  HorizontalAlignment="Left" VerticalAlignment="Bottom" Stretch="None" ></Image>
        </Grid>

Kod c#:

   public MainWindow()
        {
            InitializeComponent();

            TBNo_0_0 = StylTekstu(0, 0);
            TBNo_0_1 = StylTekstu(0, 1);
            TBNo_0_2 = StylTekstu(0, 2);

        }

        TextBox[,] txtBox = new TextBox[0, 3];

        public TextBox StylTekstu(int i, int j)

        {
            txtBox[i, j].Text = "6";     

            txtBox[i, j].FontSize = 13;
            txtBox[i, j].FontWeight = FontWeights.Bold;
            txtBox[i, j].Foreground = Brushes.Red;
            txtBox[i, j].VerticalAlignment = VerticalAlignment.Center;
            txtBox[i, j].HorizontalAlignment = HorizontalAlignment.Center;
            txtBox[i, j].TextAlignment = TextAlignment.Center;
            txtBox[i, j].BorderBrush = Brushes.White;

            return txtBox[i, j];
        }

 

Teraz lepiej ? :)
komentarz 4 czerwca 2018 przez NowyUrzydgownig Mądrala (5,090 p.)
Te przypisanie nowych textboxów zrób nie w funkcji MainWindow, a w jakiejś funkcji po kliknięciu przycisku.
komentarz 4 czerwca 2018 przez polsky Nowicjusz (230 p.)
edycja 4 czerwca 2018 przez polsky
Sprawdziłem jeszcze raz i  metoda ustawia wartość txtBoxa[0,0] prawidłowo ( zmienia sie wartość stringa, i wielkość czcionki). Nie wiem dlaczego nowe własciwosci obiektu nie sa przekazywane do pola tekstowego
komentarz 4 czerwca 2018 przez NowyUrzydgownig Mądrala (5,090 p.)
zrob tak jak ci napisalem.

1 odpowiedź

0 głosów
odpowiedź 19 czerwca 2018 przez raftom Użytkownik (660 p.)
wybrane 4 lipca 2018 przez polsky
 
Najlepsza

Nie wiem czy to coś pomoże bo nie wiedzę całego twojego kodu ale sprawdź te rzeczy:

Czy tabela textBox jest wypełniana? i kedy!!!!!! Chodzi mi o to już w xamlu deklarujesz TextBox np.

<TextBox Name="TBNo_0_1"  Background="#FF85B959" FontFamily="Times New Roman" />

Metoda InitializeComponents() go tworzy i według mnie tabelka textBox powinna wyglądać tak

TextBox[,] txtBox = NULL;

public MainWindow()
{
       InitializeComponent();

       txtBox = new TextBox[1, 3] {{ TBNo_0_0, TBNo_0_1, TBNo_0_2 }};

        StylTekstu(0, 0);
        StylTekstu(0, 1);
        StylTekstu(0, 2);
}

Teraz twoja metoda StylTekstu() powinna zadziałać (wywal returna na końcu oczywiście i zmień na typ void)

komentarz 4 lipca 2018 przez polsky Nowicjusz (230 p.)
Dzięki , zadziałało :)

Podobne pytania

0 głosów
1 odpowiedź 156 wizyt
pytanie zadane 15 września 2016 w C# przez jankustosz1 Nałogowiec (35,880 p.)
0 głosów
0 odpowiedzi 259 wizyt
pytanie zadane 17 grudnia 2021 w C# przez Ilmefy Obywatel (1,950 p.)
0 głosów
1 odpowiedź 173 wizyt
pytanie zadane 27 maja 2019 w C# przez Anon LVL 1000 Użytkownik (690 p.)

92,572 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...