• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    MORMEGIL
    MORMEGIL --- ---
    MAIMONIDES: UWP je mrtvé, ne?
    MAIMONIDES
    MAIMONIDES --- ---
    FONTAN: Jestli to má být hezký a moderní, tak pro desktop doporučuju uwp.
    SAJAGI
    SAJAGI --- ---
    Jen bych se rád podělil, že Rider je už dost slušný IDE a koho trápí rychlost R#, tak vřele doporučuju.
    TOOMIX
    TOOMIX --- ---
    FONTAN: jen doplním, že když to koupíš, tak první rok je cena vyšší, pak už další roky cena ponížená. Pozor ale na to, že když jeden rok přestaneš předplácet a po dejme tomu roce budeš chtít pokračovat, musíš koupit celý balík znovu. Nevím jestli to tak mají i ostatní
    FONTAN
    FONTAN --- ---
    diky moc

    devexpress se objevilo tolikrat, ze to asi zkusim[e]
    MORIARTY
    MORIARTY --- ---
    Na ASP.NET MVC jsme používali Kendo UI, docela dobrý komponenty, grid je skvělej, ale jsou na můj vkus příliš složitý a nějaké oskinování nebo úprava funkčnosti je o přepisování zdrojáků komponent. S přechodem na typescript a Vue.js jsme se na ně vyprdli a používáme komponenty z Vue.js, které si někdy drobně upravujeme k obrazu svému.

    Na WinForms používáme Devexpress. Grid je skvělý, layouty ukládáme do databáze, uživatel si ho může upravovat, podporuje i vizuální grupování. Trochu zápasíme s layoutama na editačních formulářích (striktně všude používáme LayoutControl), ale to je daný spíš tím, že zákazník vždycky chce nějakej složitější layout, kterej se v tom devexpressím systému obtížně vytváří. Ale je možný dávat komponenty přímo na formulář jako u obyčejných komponent.
    TOOMIX
    TOOMIX --- ---
    TOOMIX: a samozřejmě gridcontril podporuje podmíněné formátování a celý jeho layout (i s tím podmíněným formátováním) jde exportovat jako xml a uložit třeba do databáze a pak to z toho xml zase automaticky "sestavit" zpátky. Každý uživatel si tak může vyházet/doplnit sloupce z datatable, co nepotřebuje/potřebuje a pořád to je jeden a ten samý formulář s gridem

    DevExpress WinForms: Getting Started with the Grid Control
    http://www.youtube.com/watch?v=8_3kRf0Uisc
    TOOMIX
    TOOMIX --- ---
    TOOMIX: jo a na Spinedit jsem zapomněl
    TOOMIX
    TOOMIX --- ---
    Jen dodám, co z těch DevExpress WinForms komponent používáme nejčastěji

    RibbonForm
    End-User Report Designer
    XtraReports
    Checkedit
    Textedit
    Labelcontrol
    Lookupedit
    Searchlookupedit
    Timepicker
    Coloredit
    Simplebutton
    Memoedit
    Gridcontrol
    Gridview
    Bandedgridview
    Radiogroup
    Chartcontrol

    Nejvíc si cením toho gridcontrolu, má vestavěné filtrovaní ála excel, groupovaní dle sloupců, do zapatí se dají dát summary itemy (sum, min, max, avg, count) i s vlastním výpočtem (třeba vážený průměr), umí subgridy, umí exportovat data do pdf/csv/txt/rtf/xlsx/png/mnoho dalšího a hlavně nemá problém s rychlostí (refresh dat, filtrovaní atd), když do něj načtu datatable s 20 sloupcema a 10000 řádkama
    VITI
    VITI --- ---
    FONTAN: pred mnoha lety sem pouzival DevEx v Delphi a bylo to paradni, aktualne jsem zrovna prevzal v pondeli WPF aplikaci s devex komponentama a zatim se mi to celkem libi. Jediny co bych pred nakupem provedl jsou nejake performance testy, tyhle zkraslovadla vzdy neco stoji.
    TOOMIX
    TOOMIX --- ---
    FONTAN: cca 13 let používáme DevExpress, ale jen WinForms. Každopádně bych neměnil, ikdyž jsem ostatnínjmenované nezkoušel. Mají všechno co potřebujem a hlavně funkční bez chyb.
    FONTAN
    FONTAN --- ---
    dotaz - pouzivate nekdo aktualne nejake baliky kontrolu a jak jste s nimi spokojeni? (C# WPF/MVC & ASP.NET/MVC klidne se silnejsi JS casti)
    * Telerik
    * DevExpress
    * GrapeCity
    * Infragistics
    * Syncfusion
    * cokoli dalsiho... ?

    vypada to, ze budeme prehazovat 3 aplikace a rozhlizime se po berlickach
    2 z nich jsou desktop app - pojedou na trerminalovem serveru - a myslim, ze budou WPF/MVC (zadny universal a tak neni potreba, jedou opravdu striktne pres rdpcka ma desktopy)
    1 webova aplikace [soucasna je solidne legacy s prasacky pouzivanymi WebForms]

    -- jedna z tech starsich desktop pouziva Telerik [v nejake absurdne stare verzi, kde se mi ani nepodarilo rozhodit to ve VS tak, abych ji videl v designer modu]

    -- vypada to, ze to bude licencovane jen pro jednoho developera a mam rozpocet (na ty controls) do +- 2000 dolaru
    TOOMIX
    TOOMIX --- ---
    RUTHAN: rozumim tomu dobre, ze potrebujes string[] args co Ti vlezou jako patametr do Mainu v Program.cs nejak prenest do formulare, ktery v tom mainu otevres treba pres Application.Run(new Form())?
    RUTHAN
    RUTHAN --- ---
    VITI: Cil: Tak nejak oboje.

    Proste vytvorim novy projekt Windows Form Application aplikaci, tam si udelam nejaky button event a chci v nem jakokoliv zpracovavat vstupy z prikazovyho radku (nepoviny) a pokud se zadan prislusny parametr chci na formulari spustit nejaky event, ktery by jich uzivatel musel kliknout rucne.. Cili se to snazim automatizovat.

    Nikdy predtim jsem to neresil, ale v soucasti project je i defaultne Program.cs, kde je nejaka staticka main metoda, pres kterou ty vstupy musim poresit paklize je projekt consolova aplikace. Ted se potrebuju naucit jak to aplikovat na tu formularovou aplikaci, co kde upravit a tak.
    VITI
    VITI --- ---
    RUTHAN: chces to jen zprovoznit nebo se neco ucis?
    Ve statickym kontextu - tride zadnou instanci (this) nemas, takze tam posli misto this treba tu instanci formulare, tj F.
    Jinak tomu "ktery resi vstupy z cmd" bohuzel nerozumim.
    RUTHAN
    RUTHAN --- ---
    VITI: Dik, budu toho potrebovat vic.

    Tohle mu dava - Keyword 'this' is not valid in a static property, static method, or static field initializer.

    Kdyz mam aplikaci, kde mam Form1, jak tam presne udelam tu instanci v ramci toho Program.cs, ktery resi vstupy z cmd?

    Mam to tahle:

    Program.cs:

    static void Main(string[] args)
    {
    ..
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Application.Run(new Form1());

    // Pak zkousim udelat instanci toho formu1:
    Form1 F = new Form1();

    // Pak ten click:
    F.button1_Click(this, EventArgs.Empty);

    MAIMONIDES
    MAIMONIDES --- ---
    ICARUS: tech způsobů je asi 8
    ICARUS
    ICARUS --- ---
    MAIMONIDES: Myslis Blazor? Zatim ne, bohuzel.
    MAIMONIDES
    MAIMONIDES --- ---
    Zkoušel tu někdo js v c#?
    VITI
    VITI --- ---
    RUTHAN: metoda ma povinne parametry, tak nejaky zadej:
    Button1_Click(this, EventArgs.Empty);
    NECROMAN
    NECROMAN --- ---
    JAACOB: jo, je to novinka ze C# 5.0, sikovne vesi hlavne pro MVVM
    Caller Info Attributes in C# 5.0 - CodeProject
    https://www.codeproject.com/Tips/606379/Caller-Info-Attributes-in-Csharp-5-0
    Kliknutím sem můžete změnit nastavení reklam