• ú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
    NECROMAN
    NECROMAN --- ---
    TENCOKACISTROMY: WPF jako takove je snad vsude stejne, nemyslis spis rozdil mezi WPF v .NET 3.5, 4.0 a 4.5?
    What's New in WPF Version 4.5
    http://msdn.microsoft.com/en-us/library/bb613588.aspx
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    Nevite o nejakym seznamu rozdilu WPF v pripade, kdy bezi aplikace ve Win7 vs. Win8? Pripadne jeste Win8 vs. Win8 v TabletPC modu?
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    Tak neuvritelne se stalo skutkem. Po obetovani dospele panny a cerneho kohouta na oltari nejvyssiho XAML boha, se mi podarilo splodit toto:
    <Path Fill="Blue">
    			<Path.Data>
    				<GeometryGroup>
    					<PathGeometry>
    						<PathFigure StartPoint="160 70">
    							<ArcSegment Point="140 130" Size="63.2 63.2" IsLargeArc="True" />
    							<LineSegment Point="133 123" />
    						</PathFigure>
    					</PathGeometry>
    					
    					<PathGeometry>
    						<PathFigure StartPoint="160 70">
    							<LineSegment Point="150 70" />
    							<ArcSegment Point="133 123" Size="53.2 53.2" IsLargeArc="True" />
    						</PathFigure>
    					</PathGeometry>
    					
    					<PathGeometry>
    						<PathFigure StartPoint="130 70">
    							<LineSegment Point="180 70" />
    							<LineSegment Point="155 105" />
    							<LineSegment Point="130 70" />
    						</PathFigure>
    					</PathGeometry>
    				</GeometryGroup>
    			</Path.Data>
    		</Path>
    


    Graficky jsem to naklikat v Blendu nebyl schopnej (jedine jako sadu shapes a pak export do path, kde z toho vylezly bezierovy krivky).
    Nevim kdo to vymejslel, ale teda tohle by grafici asi jen tak neudelali.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    Chtel bych udelat nasledujici ikonu ve wpf pres path. Nejak se mi nedari skamaradit s ArcSegment tridou (furt to dela neco jinyho, nez chci). Kdo mi pomuze :)?

    NECROMAN
    NECROMAN --- ---
    Tool pro generovani codebehind souboru pro *.resw soubory u Windows 8 aplikaci, muze se vam hodit:
    ResW File Code Generator - Home
    http://reswcodegen.codeplex.com
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    SLUPKA: asi v tomto pripade mas pravdu, taky sem k tomu dosel, ale radsi sem se zeptal
    SLUPKA
    SLUPKA --- ---
    ANDY_WARHOL: Jak ověřovala? To je odpověď od serveru, takže výsledek připojení na server. To bys chtěl volat server 2x, jen kvůli tomu, abys zjistil, jestli to projde? Try catch mi tady přijde naprosto vyhovující.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    takovej rychlej dotaz, nejak to nemuzu vygooglit
    kdyz mi WebClientTimeOut.DownloadString vyhodi (400) Bad Request. muzu to chytit try catchem, ale neexistuje nejaky lepsi postup ? nenasel sem zadnou metodu, ktera by nejdriv request overovala.
    NECROMAN
    NECROMAN --- ---
    Jak jsem tu nedavno resil problem dynamickeho bindovani eventu na commandy ve WinRT, tak uz je to vyreseno:
    windows 8 - How to dynamically bind event to command in WinRT without Reactive framework? - Stack Overflow
    http://stackoverflow.com/...to-dynamically-bind-event-to-command-in-winrt-without-reactive-framework
    protected override void OnAttached()
    {
        EventInfo evt = AssociatedObject.GetType().GetRuntimeEvent(Event);
        if (evt != null)
        {
            MethodInfo addMethod = evt.AddMethod;
            MethodInfo removeMethod = evt.RemoveMethod;
            ParameterInfo[] addParameters = addMethod.GetParameters();
            Type delegateType = addParameters[0].ParameterType;
            Action<object, object> handler = (s, e) => FireCommand(e as RoutedEventArgs);
            MethodInfo handlerInvoke = typeof(Action<object, object>).GetRuntimeMethod("Invoke", new[] { typeof(object), typeof(object) });
            Delegate @delegate = handlerInvoke.CreateDelegate(delegateType, handler);
    
            Func<object, EventRegistrationToken> add = a => (EventRegistrationToken)addMethod.Invoke(AssociatedObject, new object[] { @delegate });
            Action<EventRegistrationToken> remove = t => removeMethod.Invoke(AssociatedObject, new object[] { t });
    
            WindowsRuntimeMarshal.AddEventHandler(add, remove, handler);
        }
        base.OnAttached();
    }
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    URZA: V tech powertools to museli nejak udelat. Treba to bude na par radek :).
    URZA
    URZA --- ---
    TENCOKACISTROMY: jj vim, ale prave me slo o ty zkratky a pouziti z klavesnice.. nerad saham na mys. Tema pluginama mas na mysli neco konretniho?
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    URZA: Ten novej solution explorer jde udelat pres right-click v solution exploreru.
    Zkratka nevim, asi jedine pres plugin.
    URZA
    URZA --- ---
    Pouzivate nekdo PowerTools? Ve verzi pro VS2010 bylo uplne super pod zkratkou CTRL+2 ze otevrelo novy floating okno solution navigatoru/exploreru ktery melo scope na aktualni tridu ve ktere clovek zrovna pracoval v text editoru + byl focus na serch boxu takze se dalo rovnou hledat. A cele se to dalo zavrit escapem.

    Ve VS2012 mi to chybi a nejde to takto pohodlne nastavit ani pres vlastni shortcuts v nastaveni..
    SAJAGI
    SAJAGI --- ---
    TENCOKACISTROMY: Díky. Zkouším udělat nějaký DLR wrapper nad pywin32, abych nemusel sám do C++, tak uvidíme.
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    SAJAGI: Integroval jsem python pres IronPython do 3D studia (MaxScript <-> .NET <-> IronPython). Ale plnou interoperabilitu mezi "cistym" (C)Pythonem jsem neresil.
    SAJAGI
    SAJAGI --- ---
    Ahoj, používali jste volání funkcí z Python modulů z .NETu? Máme ve firmě nějaké řešení co používá C++/CLI nad Python/C API, ale určitě existuje něco hotového? IronPython bohužel použít nemůžeme - komponenta od jiného výrobce, kterou používáme, spoléhá na CPython.
    NECROMAN
    NECROMAN --- ---
    TENCOKACISTROMY: nefunguje protoze RoutedEventArgs nebo ItemClickEventArgs nelze priradit do EventArgs.
    Shrnul jsem aktualni poznatky sem:
    windows 8 - How to dynamically bind event to command in WinRT without Reactive framework? - Stack Overflow
    http://stackoverflow.com/...to-dynamically-bind-event-to-command-in-winrt-without-reactive-framework
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    NECROMAN: Kdyz to zavolas vzdycky jako:
    Observable.FromEventPattern<EventArgs>(AssociatedObject, Event).Subscribe(delegate { FireCommand(); });

    Sezere ti to?
    NECROMAN
    NECROMAN --- ---
    TENCOKACISTROMY: Ve zkratce chci prepsat toto:
    A WinRT behavior to mimic EventToCommand - Init
    http://www.be-init.nl/blog/12968/a-winrt-behavior-to-mimic-eventtocommand
    Aby to nebylo zavisle na Reactive Frameworku. Jedine misto, ktere ten framework vyzaduje je toto:
    Observable.FromEventPattern<RoutedEventArgs>(AssociatedObject, Event)
          .Subscribe(se => FireCommand());
    Takze otazka za pet bludistaku, jak to napsat ve WinRT bez Rx? :)
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    A fakt nutne potrebujes volat tu generickou metodu? Nemuzes ji volat jako negenerickou?
    Ono i ve "velkym" runtimu tohle neni uplne ono.
    NECROMAN
    NECROMAN --- ---
    Uz to skoro mam. Ted jen resim:
    mam "Type eventHandlerType" a nejakou metodu "FireEvent(object sender, RoutedEventArgs args)" kterou lze priradit do onoho Eventhandleru, jak to ale udelat dynamicky, aniz bych znal ten typ eventHandlerType?

    Toto funguje napr:
    RoutedEventHandler reh = FireEvent;
    ItemClickEventHandler iceh = FireEvent;
    potrebuji ale
    object eh = (eventHandlerType)FireEvent;
    Kliknutím sem můžete změnit nastavení reklam