🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.pl.comp.lang.csharp
Article #21584

Re: Kilka pytan dotyczacych WPF

#21584
From: SHA da Vinci
Date: Wed, 23 Jun 2010 07:44
56 lines
3706 bytes
On 14 Cze, 14:08, "Cygnus.Programy" <cygnus.progr...@gmail.com> wrote:
> Nowy projekt, wiec przy okazji zainteresowalem sie WPF (strona
> graficzna jest tutaj wazna). Czy istnieje mozliwosc dokonywania
> dynamicznych zmian w interfejsie uzytkownika w zaleznosci od tego,
> jakie uprawnienia ma uzytkownik, np:
> - menu "Administracja" dostepne tylko dla uzytkownikow z uprawnieniami
> administratora, menu Edycja dostepne dla uzytkownikow z uprawnieniami
> do edycji etc,
> - przyciski wylaczone lub ukryte w zaleznosci od uprawnien itp
>
> Troche z tym zwiazane:
> - dynamiczne tworzenie listy pozycji w jednym polu combobox w
> zaleznosci od tego, co wybieramy w drugim polu combobox, np: po
> wyborze z listy krajow "Polska", otrzymujemy w innym polu combobox
> liste wojewodztw w naszym kraju, po wyborze USA otrzymujemy liste
> stanow (do tego zalozmy, ze te dane sa sciagane z bazy danych).
>
> Dziekuje
> PP

Nie mam osobiście doświadczenia z WPFem (dopiero stawiam pierwsze
kroki), ale pod tym wzlgędem nie różni sie zbytnio od Windows.Forms

ad.1
W gridzie masz jak rozumiem kontrolkę Menu i w niej kilka MenuItem,
tak?
dla MenuItem interesują cię własności:
 = Visibility: Visible (domyślnie, widoczna), Hidden (niewidoczna,
zajmuje miejsce) i Collapsed (jak Hidden, ale zwalnia miejsce)
 = IsEnabled - jeśli false - element jest nieaktywny (niedostępny)

ad.2
Załóżmy, że masz kontrolkę ComboBox o nazwie kombo.
lista aktualnych pozycji w kombo to własność kombo.Items
Interesujące metody:
 = kombo.Items.Clear() - opróżnia aktualną listę
 = kombo.Items.Add(...) - dodaje pozycję na końcu listy
 = kombo.Items.Insert(...) - dodaje pozycję w wybranym miejscu listy
 = kombo.Items.Remove(...) i RemoveAt(...) - usuwa odpowiednią pozycję
z listy
przykład:
kombo.Items.Add("jakiś napis");
kombo.Items.Add(new ComboBoxItem {Content = "item z napisem"});
kombo.Items.Add(new ComboBoxItem {Content = 13.45});
do Items można dodać jakikolwiek object. ComboBoxItem byłby potrzebny,
gdybyś chciał dla pozycji ustawić jakieś własności jeszcze przed
dodaniem pozycji do listy.

Na przyszłość polecam http://msdn.microsoft.com/en-us/library/default.aspx
- tutaj znajdziesz praktycznie całą referencję do podstawowych
przestrzeni nazw.
Drugie źródło informacji to choćby podpowiadanie składni lub
przeglądanie elementów w panelu Properties (Własności).


SHA da Vinci
Technical Details
Message-ID: <797ea3fc-675f-4de7-ae60-186cee0aa3fc@i28g2000yqa.googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!plix.pl!newsfeed1.plix.pl!news-out1.kabelfoon.nl!newsfeed.kabelfoon.nl!xindi.nntp.kabelfoon.nl!feeder.news-service.com!postnews.google.com!i28g2000yqa.googlegroups.com!not-for-mail
References: <ae4e051a-f772-4f00-b0eb-76b4d0a96b2e@w12g2000yqj.googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!plix.pl!newsfeed1.plix.pl!news-out1.kabelfoon.nl!newsfeed.kabelfoon.nl!xindi.nntp.kabelfoon.nl!feeder.news-service.com!postnews.google.com!i28g2000yqa.googlegroups.com!not-for-mail
From: SHA da Vinci <shadavinci@gmail.com>
Newsgroups: alt.pl.comp.lang.csharp
Subject: Re: Kilka pytan dotyczacych WPF
Date: Wed, 23 Jun 2010 00:44:25 -0700 (PDT)
Organization: http://groups.google.com
Lines: 60
Message-ID: <797ea3fc-675f-4de7-ae60-186cee0aa3fc@i28g2000yqa.googlegroups.com>
References: <ae4e051a-f772-4f00-b0eb-76b4d0a96b2e@w12g2000yqj.googlegroups.com>
NNTP-Posting-Host: 194.116.183.108
Mime-Version: 1.0
X-Trace: posting.google.com 1277279065 13620 127.0.0.1 (23 Jun 2010 07:44:25 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Wed, 23 Jun 2010 07:44:25 +0000 (UTC)
Complaints-To: groups-abuse@google.com
Injection-Info: i28g2000yqa.googlegroups.com; posting-host=194.116.183.108;  posting-account=A0Bg4goAAABx77voLZoq-a85IDq5nQTf
User-Agent: G2/1.0
X-HTTP-UserAgent: Opera/9.80 (Windows NT 6.1; U; en) Presto/2.5.29  Version/10.60,gzip(gfe)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit