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

wpf Problem z ustawieniem buttonów i odwoływaniem się do kontrolek

0 głosów
388 wizyt
pytanie zadane 29 sierpnia 2016 w C# przez jankustosz1 Nałogowiec (36,960 p.)
<Style TargetType="{x:Type ListBoxItem}">
            <Setter Property="Padding" Value="3" />
            <Setter Property="ContentTemplate">
                <Setter.Value>
                    <DataTemplate>
                        <DockPanel>
                            <TextBlock Text="{Binding}" DockPanel.Dock="Left" />
                            <WrapPanel DockPanel.Dock="Right">
                                <Button x:Name="buttonWlacz" Click="buttonWlacz_Click" Visibility="Hidden">Włącz</Button>
                                <Button x:Name="buttonUsun" Click="buttonUsun_Click" Visibility="Hidden">Usuń</Button>
                            </WrapPanel>
                        </DockPanel>
                    </DataTemplate>
                </Setter.Value>
            </Setter>

            <Style.Triggers>
                <Trigger Property="IsSelected" Value="true">
                    <Setter Property="Padding" Value="7" />
                    <Setter Property="FontWeight" Value="Bold" />
                    <Setter TargetName="buttonWlacz" Property="Visibility" Value="Visible" />
                    <Setter TargetName="buttonUsun" Property="Visibility" Value="Visible" />
                </Trigger>
            </Style.Triggers>
            
        </Style>

Witam.

Mam taki kod i mam 2 problemy.

Pierwszy to to że te 2 buttony nie ustawiają się po prawej stronie

Drugi to to że nie wiem jak odwoływać się z poziomu tych Tiggerów do tych buttonów

1 odpowiedź

0 głosów
odpowiedź 30 sierpnia 2016 przez achilles147 Dyskutant (9,580 p.)
edycja 30 sierpnia 2016 przez achilles147

1. Co rozumiesz przez "Nie ustawiają się po prawej stronie" prawej stronie czego?? chodzi o to żeby ustawiały się poziomo względem siebie ??. Jeżeli tak to sprawdził bym czy ten kontener (WrapPanel) nie ma jakiejś właściwości typu Orientation i czy nie można jej ustawić na wartość Horizontal.

 

2. " jak odwoływać się z poziomu tych Tiggerów" nie rozumiem tego zdania. Czy chodzi Ci o to żeby dać przyciskowi jakąś logike? ( podpiąć handler pod event :) ). Jeżeli tak to takie rzeczy w xamlu robisz przez właściwość Command, którą znajdziesz na swoim przycisku. Czyli :

 

<Button x:Name="buttonWlacz" Command="{Binding TwojDelegat}" Click="buttonWlacz_Click" Command="" Visibility="Hidden">Włącz</Button>

 teraz dodałeś handler do swojego przycisku o nazwie TwojDelegat. Następnie trzeba iść do kodu i dopisać właśnie taki delegat:

public DelegateCommand TwojDelegat{ get; set; }

Następnie w konstruktorze podpinasz pod niego jakąś swoją metodę :

TwojDelegat= new DelegateCommand(TwojaLogika);

private void TwojaLogika()

{

}

 

komentarz 31 sierpnia 2016 przez jankustosz1 Nałogowiec (36,960 p.)

Uprecyzuję:

1) wrap panel z przyciskami chcę aby ustawiał się po prawej stronie względem dockPanela

2)Z poziomu tiggera nie widać buttonu czyli takie coś:

<Setter TargetName="buttonWlacz" Property="Visibility" Value="Visible" />

jest błędem

komentarz 31 sierpnia 2016 przez achilles147 Dyskutant (9,580 p.)

1) Rozumiem, że poprostu chcesz żeby po lewej stronie był text box a po prawej ten twój wrap panel. 

ja bym Ci proponował zamiast DockPanel użyć :

 <StackPanel Orientation="Horizontal">
... twoje przyciski itp
 </StackPanel>

 

Wtedy automatycznie będą Ci się po kolei od lewej strony ustawiać

2. Dalej nie rozumiem czym jest dla Ciebie trigger

 

komentarz 2 września 2016 przez jankustosz1 Nałogowiec (36,960 p.)
1) Chcę zrobić by ten wrap panel był maksymalnie po prawej stronie a nie zaraz po textboxie, nie chcę też dawać sztywnego wyliczonego margin żeby aplikacja była responsywna

2) Ten tigger jest po to aby po zaznaczeniu itemu w liście wykonały się odpowiednie zadania czyli zmiana paddingu i ustawienie widocznosci buttonow a nie chcę tego robić w kodzie c# bo jest to nieprofesjonalne tam jest część logiczna

Podobne pytania

+1 głos
1 odpowiedź 6,363 wizyt
pytanie zadane 18 sierpnia 2016 w C# przez jankustosz1 Nałogowiec (36,960 p.)
0 głosów
3 odpowiedzi 421 wizyt
pytanie zadane 12 marca 2019 w C# przez seba Dyskutant (8,900 p.)
+1 głos
1 odpowiedź 741 wizyt
pytanie zadane 9 grudnia 2021 w C# przez Bodziek96 Nowicjusz (150 p.)

93,424 zapytań

142,421 odpowiedzi

322,646 komentarzy

62,785 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

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...