• ú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
    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
    RUTHAN
    RUTHAN --- ---
    MORMEGIL: Pro me output jako output a kdyby to slo presmerovat, tak by se mi to hodilo..

    Jinak resim ted jinou vec mam Windows aplikaci a chtel bych ji pridat nejaky command line parameter, tak aby se na zaklade vstupu zavolal event na formulari?

    Nacist ten vstup v Program.cs v Mainu umim, ale uz nej nejmim zavolat ten event, kdyz se pokusim udelat si instanci toho formulare, tak dostavam - Error 1 No overload for method 'button1_Click' takes 0 arguments C:\temp\WindowsFormsApplication2\WindowsFormsApplication2\Program.cs no overload for method.
    Jak se tohle resi?
    JAACOB
    JAACOB --- ---
    Btw - objevili jsme s kolegou nedavno super attributy v C#, ktere automaticky doplni optional parametry metody o zdroj volani. Bohuzel jen nazev metody, fajl a cislo radku (assebly / namespace by imho byl uzitecnejsi), ale aspon neco...

    CallerMemberNameAttribute Class (System.Runtime.CompilerServices) | Microsoft Docs
    https://docs.microsoft.com/...ntime.compilerservices.callermembernameattribute?view=netframework-4.8
    JAACOB
    JAACOB --- ---
    RUTHAN: Nevim, jestli ti to k necemu bude, ale hookovali jsme se sveho casu na Debug cally a ty si pak teoreticky muzes vypsat kam chces. Viz: MSDN - Debug.Listeners. Zahlidl jsem i nejake ConsoleTrace listenery a podobne, ale nevim co presne s tim vlastne chces delat.
    MORMEGIL
    MORMEGIL --- ---
    RUTHAN: Inu, tak si ji napiš, jsou to vážně dvě nesouvisející věci. (Ale Rider umí konzoli zobrazit ve svém vlastním okně.) Ale úplně nevím, jak souvisí spouštění ručně z filesystému s tím, kam se co vypisuje.
    RUTHAN
    RUTHAN --- ---
    NECROMAN: Ja bych potreboval jednu funkci pro oboje - vypisovat do konzole, to co chci vypisovat i pri spusteni programu, lip se pak veci ladi.. Samozrejme muzu neco zbuildit a pak si to spustit rucne z filesystemu mimo VS, ale je to par kliku navic.
    SAJAGI
    SAJAGI --- ---
    Umí nějak VS 2019 pro F# automaticky generovat overridy abstraktních metod z bázové třídy? Psát to ručně je hrozný opruz :/
    NECROMAN
    NECROMAN --- ---
    RUTHAN: nepleteš si Debug.Writeline a Console.Writeline? To jsou dvě různé věci, i když se používají podobně.
    Kliknutím sem můžete změnit nastavení reklam