IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Visual studio - WPF - XAML - DecimalUpDown

Aktivity
Avatar
Ježek Vít :21.10.2018 20:12

Po snažení najít komponentu typu "DecimalUpDown", jsem zjistil, že WPF ji už nepodporuje, defaultně. Existuje za ni adekvátní náhrada? Nebo možnost jak ji tam dostat?

Zkusil jsem: Dle netu jsem si našel knihovnu, která ji měla mít > https://github.com/…e/wpftoolkit < jsem ji stáhnul a spustil přes soubor ".sln". Akorát se to otevřelo jako projekt (kde navíc DecimalUpDown ani není), ne jako knihovna. Přiznám, že v importu knihoven dost plavu, hlavně v tom, jak ji dostat do XAMLu (v kódu (.cs) ji vložit umím (když už je naimportována))), ale v xaml ne.

Chci docílit: Vložení funkční komponenty "DecimalUpDown" v XAMLu a její využití.

Odpovědět
21.10.2018 20:12
Nemyslím, tedy nejsem.
Avatar
ostrozan
Tvůrce
Avatar
Odpovídá na Ježek Vít
ostrozan:21.10.2018 22:21

Ve wpf můžeš použít jakoukoliv kontrolku WF.
Jak na to se dozvíš tady

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
21.10.2018 22:21
Avatar
Odpovídá na Ježek Vít
Patrik Valkovič:21.10.2018 22:27

Proč stahuješ zdrojové kódy? Abys mohl použít jednu kontrolku, musel bys celou knihovnu překompilovat. Použij radši NuGet (jak uvádějí v Readme mimo jiné): https://www.nuget.org/…Wpf.Toolkit/.

Nahoru Odpovědět
21.10.2018 22:27
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Odpovídá na ostrozan
Ježek Vít :23.10.2018 21:23

Podle toho návodu jsem

  1. vytvořil v XAMLu <Grid Name="grid1" Loaded="Window_Lo­aded"> </Grid> ....
  2. v kódu dopsal "using System.Window­s.Forms;"
  3. vytvořil třídu " private void Window_Loaded­......" (zkopírovanou z návodu)

bohužel mi to podtrhne v řádku "System.Window­s.Forms.Integra­tion.WindowsFor­msHost..." slovo "Integration" a hodí chybu -> "Chyba 1 The type or namespace name 'Integration' does not exist in the namespace 'System.Window­s.Forms' (are you missing an assembly reference?) c:\users\aditus\do­cuments\visual studio 2013\projects\sez­nam\okno_novy_sez­nam.xaml.cs".­..
Nevíš, prosím, co s tím?

Nahoru Odpovědět
23.10.2018 21:23
Nemyslím, tedy nejsem.
Avatar
Odpovídá na Ježek Vít
Patrik Valkovič:23.10.2018 22:06

Ačkoliv se stále přikláním k tomu použít NuGet, problém bude v tom, že ti chybí knihovna pro WinForms. Projekt by měl mít záložky References. Klikneš pravým, dáš "Add Reference" a najdeš .dll knihovnu s WinForms. Už si nepamatuji, ve které Assambly je WinForms definovaný, ale měl bys ho najít někde v seznamu.

Nahoru Odpovědět
23.10.2018 22:06
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Ghst
Člen
Avatar
Odpovídá na Patrik Valkovič
Ghst:29.10.2018 23:02

Trošku mimo téma, ale moc děkuji, že jsi mě navedl na ten toolkit, určitě lepší, než používat WF komponenty. Ps: nějaký datagrid, kde by bylo možnost filtrování, v tomhle balíčku je to až v té plus verzi, a to je trošku finančně někde jinde.

 
Nahoru Odpovědět
29.10.2018 23:02
Avatar
Petr Jílek
Člen
Avatar
Petr Jílek:31.10.2018 23:08

Datagrid fitrování zase tak moc nepotřebuje. Filtr se provádí na zdroji dat pro datagrid. Např. u třídy DataTable a její metody DefaultView se dá přímo aplikovat filtr, který se pak přímo projeví v datagridu (pokud je provedený binding na dependency property).

tzn. Datagrid itemssource nastavit bindingem na DataView property a na tuto property pak lze libovolně aplikovat filtr pomocí text řetězce se syntaxí odpovídající Sql WHERE klauzuli

 
Nahoru Odpovědět
31.10.2018 23:08
Avatar
Ježek Vít :4.11.2018 0:54

Konečně jsem se dostal ke kódování a (v začátku) po trnité cestě i zdárně k výsledku.
Nakonec jsem využil hostování WF ve WPF. Jen jsem využil spíš tuto stránku (Návod: Hostování ovládacího prvku Windows Forms v objektu WPF použitím kódu XAML).

Nahoru Odpovědět
4.11.2018 0:54
Nemyslím, tedy nejsem.
Avatar
Petr Jílek
Člen
Avatar
Petr Jílek:4.11.2018 21:55

Nebylo by lepší si napsat usercontrol (složený z textbox a 2x button)? Popravdě napsat si sám vlastní control s požadovanou funkcí člověka dost naučí. A navíc je to control ve WPF napsat dost jednpduchý. A hostování Wf ve WPF bych krajně nedoporučoval... tedy muj názor.

 
Nahoru Odpovědět
4.11.2018 21:55
Avatar
Odpovídá na Petr Jílek
Ježek Vít :5.11.2018 17:34

Nojo, to bych taky mohl někdy zkusit! To mi v té honbě za kontrolkou nenapadlo. Díky za natrknutí.

Nahoru Odpovědět
5.11.2018 17:34
Nemyslím, tedy nejsem.
Avatar
Ghst
Člen
Avatar
Odpovídá na Petr Jílek
Ghst:13.11.2018 15:49

Ano tohle jsem objevil, šlo mi spíše o obdobu, filtrů v excelu / accesu, do záhlaví sloupce uživatel napíše hodnotu, vyfiltrují se pouze hodnoty, které splňují podmínku, ano napsat to jde, ale přijde mi divné, že tohle není přímo v controlu.

 
Nahoru Odpovědět
13.11.2018 15:49
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 11 zpráv z 11.