Laden...

Forenbeiträge von Diräkt Ingesamt 615 Beiträge

22.11.2012 - 13:53 Uhr

Hallo gfoidl

Herzlichen Dank! Eigentlich suche ich immer die Fehler erst bei mir, hier hätte ich es mal umgekehrt machen sollen 😉

Wenn ich von der Telerik WPF RadRichTextBox Demo ein Export mache, auch nur mit dem Inhalt "abc" funktioniert es ebenfalls nicht...

Irgendwie versteh ich nun zwar den Sinn von PDF's gar nicht mehr, aber das Problem ist erledigt, danke !

Fals jemand auch auf der Suche ist, und docx in pdf umwandeln möchte:
Nach langer Suche musste ich feststellen das es keine gratis Komponente gibt für die Konvertierung von docx nach pdf die auch nur annähernd funktioniert. Werde wohl auf eine Kostenpfliche lösung zurückgreifen müssen, da gibts ASPOSE und GemBox

Beste Grüsse

Diräkt

22.11.2012 - 07:19 Uhr

Hallo gfoidl

Besten Dank für Deine Antwort.

Es wird teilweise nicht mal der "statische" Inhalt angezeigt auf dem IPad und auf dem Android Tablet. Mit statischer Inhalt meine ich ein "normalen" Text den ich im Word schreibe.

Das PDF generiere ich mithilfe von Telerik WPF RadRichTextBox Library. (So erweitert damit es fürs Web Funktioniert 😉 )

(Anbei der Screenshot)

Beste Grüsse

Diräkt

Edit:
=> Habe ein neues Word Dokument erstellt und nur "abc" reingeschrieben.
=> Wenn ich dies nun konvertiere zu einem PDF, sagt das Windows Phone 7.5 (corrupted file can't open ...)

21.11.2012 - 17:44 Uhr

Hallo Leute 😃

Bisher glaubte ich PDF's sehen überall "gleich" aus. Heute wurde ich eines besseren belehrt.

Ich erzeuge Word Dokumente mit Open XML. Danach konvertiere ich dieses Dokument in ein PDF ( nicht über Word ... ).

Dieses PDF sieht im Acrobat Reader Windows perfekt aus. Auch im Metro PDF Viewer.

Beim installierten "Mac Preview PDF" habe ich eine fehlerhafte Darstellung und vieles wird einfach gar nicht ausgegeben. (man kann jedoch markieren und sieht "etwas" ist da 😉 )

Installiere ich auf dem MAC den Adobe Acrobat Reader siehts auch perfekt aus.

Nun hab ich auf dem Android Tablet den Acrobat Reader installiert, leider wird gar kein Text raus gerendert. Wenn ich nun einen alternativen PDF Viewer nutze auf dem Android Tablet, ist die Darstellung zwar korrekt aber es wird mir alles in "Sonderzeichen" dargestellt....

Hat jemand eine Ahnung und kann mir ein Tipp oder Rat geben ?

Beste Grüsse

Diräkt

15.11.2012 - 18:01 Uhr

Hallo BlackMatrix

Dieses Tool gibt es bereits :

http://www.ultrapico.com/Expresso.htm

Beste Grüsse

Diräkt

(ggf. kannst ja mal den Reflector benutzen 😉 )

14.11.2012 - 12:15 Uhr

Hallo Chilic

Herzlichen Dank für Deine Antwort!

Wenn dieses div aus der Seite raus geht, gehen die absoluten natürlich auch mit.

Das ist okay und auch gewollt so. Nur würde ich gerne ein Grenzwert definieren. ( Gilt solange der Abstand von ganz Oben mindestens 50px beträgt)

Ich könnte es mit JavaScript lösen àlà:

 $(window).resize(function () {
                onResize();
            });

Jedoch würde ich es viel lieber mit css gelöst sehen !

Beste Grüsse

Diräkt

14.11.2012 - 11:45 Uhr

Hallo 😃

Ich kämpfe mit folgendem Problem:

=> Ich habe:


<div class="absoluteWrapper">
     <div class="relative">
          <div class="absolute">absolute</div>
          <div class="absolute2">absolute2</div>
          <div class="absolute3">absolute3</div>
          <div class="absolute4">absolute4</div>
      </div>
</div>

Diese Elemente sind vertikal sowie horizonal zentriert.

Wenn man nun die Browsergrösse in der Höhe verkleinert, verschwinden die Elemente.

Wie kann ich ein absoluten Mindest-Abstand von "Oben" deklarieren ?

Habe eine Test-Seite erstellt:
Test-Seite Link

Herzlichen Dank für Inputs

Beste Grüsse

Diräkt

Edit: HTML Layout angepasst an Test-Seite
Edit2: Titel Typo

30.10.2012 - 07:31 Uhr

Hallo Grimmbizkit



private string meineEigenschaft;

public string MeineEigenschaft
{
  get{return meineEigenschaft;}
  set
  {
    if(meineEigenschaft!=value)
    {
      meineEigenschaft=value;
      MeineMethode();
    }
  }
}


Beste Grüsse

Diräkt

10.10.2012 - 15:09 Uhr

Hallo Rabban

Ich weiß, aber das scheint bedeutend umständlicher zu sein, als wenn man es direkt mit OpenAccess macht. Ist ja auch irgendwie klar, es soll sich ja wie aus einem Guss anfühlen.

Kann ich absolut nicht bestätigen. Arbeite seit knapp 3 Jahren mit Telerik Controls und habe nur für ein mini Test-Projekt mal Open Access benutzt...

Beste Grüsse

Diräkt

10.10.2012 - 13:40 Uhr

OpenAccess ist der kostenlose ORM von Telerik, damit man "einfacher" mit deren Komponenten interagieren kann. Aber du hast recht, EF und NHibernate sind schon die Maßstäbe.

=> OpenAccess kann sich absolut zeigen lassen
=> Hatt einige Vorteile gegenüber dem EF

EF 4.0 vs Open Access ORM

Beste Grüsse

Diräkt

Edit:
@Rabban ; du kannst die Controls genau so gut und einfach verwenden mit einer anderen DataSource(xml,sql....)und auch egal ob mit dem EF, Nhibernate oder was auch immer...

03.10.2012 - 13:43 Uhr

Hallo Marx1809

Leider habe ich gerade keine Zeit um schnell ein Test-Projekt zu machen, daher bitte ich Dich (damit auch andere Antworten können) genau zu definieren was folgendes bedeutet: "funktioniert nicht".

=> erhält die ListBox den Fokus ?
=> Wird etwas selektiert ?
=> Sind die Items "gebunden" ?
=> Hast "SelectedItem" ev. auch gebunden ?
=> ...

Beste Grüsse

Diräkt

03.10.2012 - 10:26 Uhr

Hallo Max1809

Versuchs mal hiermit:


protected DeleteButton...(object sender, EventArgs e)
{
     int selectedIndex = itemsListBox.SelectedIndex;
     itemsListBox.SelectedIndex = 0;
     DeleteFunction();
     itemsListBox.Focus();
     itemsListBox.SelectedIndex = selectedIndex;
}

Sollte das nicht klappen, bitte zeige wie genau du es bewerkstelligen möchtest.. (Dein Anasatz...)

Beste Grüsse

Diräkt

30.09.2012 - 16:37 Uhr

Hallo MyGil

Der Membership-Provider verschlüsselt normalerweise mit SHA-1 (default).
Mit diesem Wissen kannst du es easy nachbilden :

Snippet SHA1 Verschlüsselung

Beste Grüsse

Diräkt

Edit : Sonst hier noch ein intressanter Link

26.09.2012 - 17:55 Uhr

Hallo Campy

Suchst du sowas ?



var result = MyContext.Entry(myEntry).Collection(r => r.MyNavigationTable).Query().Load();


Beste Grüsse

Diräkt

21.09.2012 - 10:07 Uhr

Hallo mcdt

Anpingen habe ich verworfen, da ich die IP des Druckers nicht kenne und sich diese auch ändern kann, und ich möchte nicht das Netzwerk durchsuchen ob der Drucker erreichbar ist.

Du kannst auch über den Hostname gehen. Versuch den Hostname vom Standard-Drucker herauszulesen danach den Ping abzusetzen.

Oder die Verbindung (Port) über den sich der Drucker verbindet herauszulesen und dann den Ping auf die IP absetzen.

Beste Grüsse

Diräkt

19.09.2012 - 21:09 Uhr

Hallo Abt

Wichtig: jQuery und ASP.NET WebForms sind im Duett nicht empfohen!

Darf ich fragen woher du das hast?

Beste Grüsse

Diräkt

19.09.2012 - 21:01 Uhr

Hallo Taucher

Hatte das Problem auch mal, versuch mal folgendes in der Web.Config anzupassen (hinzuzufügen):


.....<httpRuntime requestValidationMode="2.0"/>..........

Das sollte helfen 😉

Beste Grüsse

Diräkt

Edit : MSDN LINK dazu

19.09.2012 - 13:03 Uhr

Hallo GetChar

Mir ist nicht ganz klar, wie ich diese 1 zu n Beziehung in der Tabelle
Abbilden kann. Vielleicht hab ich auch den falschen Ansatz?

Ich verwende zwar nicht die 100% standard Reporting Tools vom VS aber sollte dennoch gleich sein:
=> Erstelle ein Sub-Report welcher ein Parameter entgegennimmt.
=> Diesen Sub-Report kannst du nun in den MainReport einbinden und den Parameter mitgeben

So kannst du 1:N im Report darstellen.

Beste Grüsse

Diräkt

17.09.2012 - 17:38 Uhr

Schritte um das Problem zu reproduzieren:

=> WebApplication mit Target Framework 4.5 erstellen
=> EF 5 installieren (NuGet)
=> GridView auf Page ziehen
=> Eine Abfrage ausführen:


Grid.DataSource = db.TestTable.Where(r => r.Id == 1);

Besten Dank für eine Antwort 😉

15.09.2012 - 20:29 Uhr

verwendetes Datenbanksystem: SQl -> EF

Hallo Leute

Ich wollte gerade eine Web-App von EF 4 auf EF5 umstellen. Eigentlich kein Problem ( ObjectContext=>DbContext )

Nun erhalte ich diese Exception seit dem Update (betrifft Binding..)> Fehlermeldung:

Data binding directly to a store query (DbSet, DbQuery, DbSqlQuery) is not supported. Instead populate a DbSet with data, for example by calling Load on the DbSet, and then bind to local data. For WPF bind to DbSet.Local. For WinForms bind to DbSet.Local.ToBindingList().

Relativ schnell habe ich dann folgendes herausgefunden:
IListSource.GetList wirft diese Exception seit EF 4.X... ( MSDN DBSET)

Normal sieht ein Aufruf etwa so aus:



GridView_NeedData(object sender, Eventargs e)
{
  GridView.DataSource= BL.GetIrgendwelcheDaten();    
}

Die BL Methoden liefern ein IQueryable oder ein IEnumerable, was bisher immer perfekt funktioniert hat. ( Weil GetList implementiert war )...

Nun natürlich könnte ich .ToList oder ähnliches verwenden, was aber die ganze Sache sehr umständlich machen würde. (da ich mich so z.B nicht selbst darum kümmern musste wieviel Datensätze abgerufen werden, das GridView (Paging-Einstellung) hat dies bestummen.... )

Kann ich also wirklich nicht mehr direkt an IQueryable binden ?

Beste Grüsse

Diräkt

11.09.2012 - 21:40 Uhr

Hallo City_Cobra

Herzlich willkommen im Forum.

new animation(Rectangle[] enemy, Texture2D enemyframes, TimeSpan time);

Deine Klasse heisst Animation nicht animation. Die Parameter Übergabe funktioniert nur so wenn auch ein Konstruktor diese Argumente akzeptiert. Du kannst die Zuweisung entweder über den short initizializer mit {} erledigen oder über die Instanz variable...

Desweitern sollst du die Variablen übergeben und dabei ist keine Typ Deklaration notwendig, dieser wurde ja schon definiert....

Grüsse Diräkt

10.09.2012 - 13:33 Uhr

Hallo skywalker1979

Ich möchte die Daten aber in einer Partition mit der Bezeichnung F:\ haben.

Du musst auf der Partition F ein Ordner erstellen "FTP DATA" und diesen Ordner dann in die "FTP Liste" reinnehmen.

Du siehst dann den Namen "FTP DATA", welcher auf F:\ verweist.

Beste Grüsse

Diräkt

06.09.2012 - 11:28 Uhr

Hallo Abt
Hallo gfoidl

Danke für Eure Antworten.

@gfoidl
=> Die Umstellung hat Problemlos geklappt, genau wie von Dir beschrieben.

@Abt

Es war auch schon immer möglich nur einzelne Spalten zu laden....

okay, und wie genau soll das gehen ?

context.Table.First().Name;

Wird eine Nullreference Exception auslösen, wenn kein Eintrag vorhanden ist.
Daher musst du ja erst die "row" selecten ?!
Auch die DbContext Mehtode

Find(pk)

macht nichts anderes ?!

Beste Grüsse

Diräkt

06.09.2012 - 08:04 Uhr

Hallo

Ich habe eine Excel Tabelle, in dieser werden Daten von einer Access-DB angezeigt (Microsoft Query => oledb). Diese Datei ist ein Office 2003 Dokumente (xls). Das Refreshen funktioniert problemlos via c# (PIA)...

Problem:

Dieses Dokument wurde konvertiert nach XLSX. Das Refreshen in Excel drin funktioniert noch. Jedoch kann z.B der MS Query Designer nicht mehr aufgerufen werden.... Was aber wirklich seltsam ist: In der konvertieren Datei funktioniert das Updaten nicht mehr via C#. ( Parameter Error).

Analyse:

Werden in einer konvertierten Datei (xls-xlsx) alle Arbeitsmappen gelöscht, und die Verbindung neu angelegt (Daten aus Access anzeigen...) => selbes Problem !

Wird ein neues Excel File angelegt und die Verbindung neu angelegt (Daten aus Access anzeigen...), funktioniert das Problemlos (auch der query-designer, wenn man das Stein Zei Teil so nennen darf).

Hat jemand eine Idee was da los ist? Kann ja nicht sein das die Excel convert Funktion (xls-xlsx) so "schelcht" ist ?!

(Für das Updaten wird WorkBook.RefreshAll(); verwendet)

Beste Grüsse

Diräkt

03.09.2012 - 15:08 Uhr

Hallo Abt

Ein Umstieg vom ObjectContext zum DbContext ist also relativ einfach, wie ich deinem Post entnehme sowie ein paar Ergebnissen von Google 😉

Ich war kein Freund von Code First...

Mir gings genau so, desshalb gehe ich bis heute den DB First weg. (Hab wohl was verschlafen 😉)

Gerne würde ich noch Deine persönliche Meinung hören bezüglich Umstieg (ObjectContext und DbContext) :

Muss ich mit stunden-langem Anpassen meiner BL Schicht rechnen ?

Wenn ich es richtig verstehe, bietet mir der DB Context unter anderem folgende Möglichkeiten:
=> Abrufen (Select) von einzelnen Spalten einer Tabelle (ohne die ganze Entity zu laden)
=> Updaten von einzelnen Spalten
=> ...

Beste Grüsse und Dank für Deine Zeit

Diräkt

Edit : Typo

03.09.2012 - 14:03 Uhr

Hallo Abt

Da ich DB First arbeite, stellt sich nun natürlich die Frage, ob sich der Wechsel lohnt?!
(Bei DB First ist ObjectContext ja Standard (oder war zumindest immer so))

Ab EF 4.1 Code First arbeitet man ausschließlich mit DbContext

Das klingt als gäbe es dann "kein" Unterschied zwischen 4.0 und 5.0 wenn ich den ObjectContext weiterhin verwende ? (Was ist mit z.B Auto compiled Querys ?)

(ich weiss du hast es auf CodeFirst bezogen), aber hast du ggf. eine Antwort für mich bereit ? 😉

Beste Grüsse

Diräkt

03.09.2012 - 13:53 Uhr

Hallo Abt

Danke für die Erklärung !

Hallo gfoidl

Das geht aber nur wenn man nicht von ObjectContext abgeleitet hat sondern von DbContext.
(DbContext isteine Art Wrapper für den ObjectContext)

Beste Grüsse

Diräkt

03.09.2012 - 09:34 Uhr

Hallo gfoidl

Herzlichen Dank für Deine Antwort.

Ich glaube weil Content-Type sowie Date und **Content-Length ** zum HTTP Protokoll Standard gehören, man diese nicht entfernen kann.

Ich habe ein HTTP Modul geschrieben mit folgendem Inhalt :


public class CloakHttpHeaderModule : IHttpModule
    {

        private readonly List<string> headersToCloak;

        public CloakHttpHeaderModule()
        {
            headersToCloak = new List<string>
                                      {
                                              "Server",
                                              "X-AspNet-Version",
                                              "X-AspNetMvc-Version",
                                              "X-Powered-By",
                                              "Date",
                                              "Content-Length",
                                              "Content-Type"
                                      };
        }

        public void Init(HttpApplication context)
        {
            context.PreSendRequestHeaders += context_PreSendRequestHeaders;
        }

        void context_PreSendRequestHeaders(object sender, EventArgs e)
        {
            headersToCloak.ForEach(h => HttpContext.Current.Response.Headers.Remove(h));
            if (WebOperationContext.Current != null)
                headersToCloak.ForEach(h => WebOperationContext.Current.OutgoingRequest.Headers.Remove(h));

        }

        public void Dispose()
        {

        }
    }

Leider sieht meine Antwort noch immer so aus: (was, wie ich befürchte, das Minimum ist)

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Date: Mon, 03 Sep 2012 07:29:52 GMT
Content-Length: 89

"ECF949B9CF2B8B8B8E1AEA2A6AAA8A0E1ACA0A2E99B82F2E08BAAB9A6ACAA83A0A8A6A1E99B9FF2F7FF92{}"

Beste Grüsse

Diräkt

03.09.2012 - 09:10 Uhr

Hallo Abt

Wie genau meinst du das ?
Wenn ich dies für Delete und Update verwende, wobei muss ich vorsichtig sein und warum ?

Beste Grüsse

Diräkt

02.09.2012 - 15:21 Uhr

Hallo Abt

Danke für Deine Antwort. Ich habe mich schlecht ausgedrückt. Eigentlich gehts wohl eher um " Wie mache ich ein Update oder ein Delete ohne Round Trip zur Datenbank."

Und die Antwort dafür wäre (wie soeben endlich gecheckt 😉) :


                        var objEntity = new MyEntity{ Id= 10 };
                        db.MyEntities.Attach(objEntity);
                        objEntity.MyProperty = "Hallo";
                        
                        .... // save or delete operation

Besten Dank dennoch!

Diräkt

02.09.2012 - 13:32 Uhr

Hallo

Folgende Frage:
=> Gerne würde ich eine Spalte beim Select Statement ignorieren, ohne dafür eine eigene Klasse zu schreiben.

Folgendes ist ja nicht erlaubt:


  var result = (from data in db.MeinEntity
                              where
                                  data.P1== "bla"
                              select new MeinEntity
                                         {
                                            P1=data.P1,
                                            P2=data.P2
                                         }).ToList();

(irgendwo auch "logisch", da das EF sonst Problem bekommen könnte, wenn es diese Entities später updaten soll oder ähnliches...)

_
Meine Frage also, wie kann ich einzelne Properties (Spalten) ignorieren ohne eine eigene Klasse dafür schreiben zu müssen (àlà SimplyfiedEntity...)._

Beste Grüsse

Diräkt

Edit:
=> Titel & Solved

30.08.2012 - 21:26 Uhr

Hallo FabianVelbert

Das gehört zu den Grundlagen, aber du kannst das erreichen in dem du eine for - schleife benutzt und den index festlegst.



int count = 0;

int.TryParse(textBox1.Text, out count);

for (int i = 0; i <= count ; i++)
        {
            ...
        }

So ungefähr könnte das aussehen.. (achtung frei getippt...)

Beste Grüsse

Diräkt

29.08.2012 - 11:22 Uhr

Hallo Herbivore

Danke für Deine Antwort. Nur den Rückgabe-Wert auslesen kann ich leider nicht, da ich nicht weiss (zeitlich) wann dieser zur Verfügung steht.

Es hat mich aber auf den richtigen Pfad gebracht :
=> Eigentlich brauch ich eine Vritual Static Method was aber nicht existiert und der Sinn davon auch fraglich ist

Lösung :
=> Die Implementation von Virtual Static Method kann man mittels einem DELEGATE lösen.

Beste Grüsse und besten Dank

Diräkt

28.08.2012 - 14:03 Uhr

Hallo Gfoidl

Danke für die Idee bezüglich Weak Events! Sieht echt interssant aus...

Das Event wird nur aboniert, wenn es auch "sofort" ausgelöst wird.** Es gibt jeweils maximal ein registrierter Event-Handler.**


public static void VerifyPromptResult(string para)
        {
            if (PromptResultRecived != null)
            {
                var args = PromptResultRecived.CreateArgs(para);
                PromptResultRecived(null, args);
                PromptResultRecived = null;
            }
        }

Nach dem ich das Event auslöse, resette ich alle Handler. Ist das Dirty ? Gibts da schlaueres ?

Beste Grüsse

Diräkt

28.08.2012 - 12:50 Uhr

Hallo 😃

Problem:
Ich muss Informationen welche eine (leider) statische Methode bietet an Ihre subscriper weiterreichen können.

Idee:
Ich erstelle ein Event welches aboniert werden kann.


 public static event EventHandler<EventArgs<string>> PromptResultRecived;

Unschön
Statische Events sind sehr hässlich, da der GC solange das Event nicht un-subscript wird, einen Verweis auf den subscriper hat => Memory-Leaks, etc...

[EDIT]Achtung diese Behauptung von mir ist falsch, hier die Erklärung von Herbivore:

die Invocation List eines MulticastDelegaten liefert eine Liste von SingleCast-Delegaten. Jeder SingleCast-Delegat hat die Degegate.Target-Property, die auf den jeweiligen Subscriber zeigt. Bei statischen Delegaten ist diese aber gerade null, so dass gerade kein Leak entsteht. [/EDIT]

Das heisst man müsste das Event immer wieder unsubscripen.

Hat jemand eine Idee wie man das besser lösen kann ?

Beste Grüsse

Diräkt

28.08.2012 - 10:48 Uhr

Hallo 😃

Problem:
Nach dem Aufspielen eines Backups von Outlook, funktioniert die Archiv-Funktion nicht mehr. Outlook nimmt das Create-Date und nicht das Recive-Date, welches nach dem Aufspielen des Backups auf dessen Tag festgesetzt wird, auch bei Mails vom Jahr 2000...

Idee:
Eigentlich dachte ich mir, easy :
=> Iteration durch alle Mails
=> Set CreateDate to RecivedDate

àlà:

for (int i = rootMailFolder.Items.Count; i > 0; i--)
            {
                var mi = (Outlook.MailItem)rootMailFolder.Items[i];
                if (mi != null)
                {
                    mi.CreationTime = mi.ReceivedTime;
                }
            }

Problem:

Leider ist CreateDate ReadOnly -> CreationTime

Theoretisch wäre es ja per Reflection möglich auf Read-Only Properties zuzugreifen, nur stürzt mir dann das Addin ab 😉

Hat jemand eine Lösung oder eine bessere Idee mein Problem in den Griff zu bekommen ?

Beste Grüsse

Diräkt

28.08.2012 - 08:45 Uhr

Hallo DeNico

Jetzt versuche ich einen im Code vorgeschriebenen Text zu drucken, aber der Druck spuckt, egal was ich mache, nur leere Seiten aus.

Was benutzt du eigentlich WinForms ? WPF ? Silverligt ? Benutzt du Virtualisierung in der ListBox ?

Schau Dir mal folgendes an:
Easily turn a ListView into a nicely printed report

Eine weitere Möglichkeit wäre (warscheinlich am schnellsten umgesetzt) ein Open-XML zu erstellen (Office-Dokument, z.B Excel). Dann kümmert sich Excel danach ums drucken 😉

Beste Grüsse

Diräkt

Edit : Add Quote Layout to Quote 😉

27.08.2012 - 21:51 Uhr

.. Es ist schon recht spät ... daher habe ich wohl etwas durcheinander gebracht :

Es müsste richtigerweise heissen:

SubscribeControlEvent("EventName", "EventHandlerMethod");


public event EventHandler<EventArgs<KeyValuePair<int, string>>> EventName;

public void EventHandlerMethod(object sender, EventArgs<KeyValuePair<int, string>> e)
        {
            
        }


Somit macht auch die Fehlermeldung absolut Sinn.

Ich geh besser schlafen, ggf. könnte es ja mal jemandem nützlich sein 😉

Beste Grüsse

Diräkt

27.08.2012 - 21:30 Uhr

Hallo Leute

Mein Ziel ist es mich für ein Event zu registrieren via reflection:

Aufruf:

SubscribeControlEvent("ViewChanged", "FireViewChanged");

Event Subscription per Reflection


 public void SubscribeControlEvent(string eventName, string eventHandlerMethodName)
        {
            var eventInfo = c.GetType().GetEvent(eventName);
            var methodInfo = c.GetType().GetMethod(eventHandlerMethodName);
            Delegate handler = Delegate.CreateDelegate(eventInfo.EventHandlerType, c, methodInfo); //<=== hier kracht es || c = UserControl Instanz (WebControl)
            eventInfo.AddEventHandler(c, handler);

        }

Definition (ViewChanged das Event (eventInfo) ; FireViewChanged die Methode (methodInfo))


public event EventHandler<EventArgs<KeyValuePair<int, string>>> ViewChanged;

 public void FireViewChanged()
        {
            if (ViewChanged != null)
            {
                var args = ViewChanged.CreateArgs(new KeyValuePair<int, string>(int.Parse(comboViews.SelectedValue), comboViews.SelectedItem.Text));
                ViewChanged(this, args);
            }
        }

Leider krieg ich immer folgende Exception :

Fehlermeldung:
ArgumentException:
{"Cannot bind to the target method because its signature or security transparency is not compatible with that of the delegate type."}

Kann mir jemand ein Tipp geben ? 😉

Beste Grüsse

Diräkt

Edit : Typo

27.08.2012 - 13:55 Uhr

Hallo Lestat

Laut msdn slider class gibts dafür z.B.

BorderBrush
Read/write Gets or sets a brush that describes the border background of a control. (Inherited from Control)

BorderThickness
Read/write Gets or sets the border thickness of a control. (Inherited from Control)

Beste Grüsse

Diräkt

Edit:
Hm, sollte es damit nicht gehen (nach genauerem durchlesen scheinst du nicht das zu suchen 😉 versuchs mal mit width 😉)

27.08.2012 - 13:52 Uhr

Hallo Didikong

Nutzen tue ich Visual Studio 2010 und das neues ASP.NET package.

Ich arbeite zwar täglich mit ASP.NET, habe aber keine ahnung was das neue ASP.nET package sein soll unter vs2010 😉

Wenn ich den gleichen Datensatz nochmal bearbeite, zeigt er mir die alten Daten an?!

Kriegen wir ein wenig Code zusehen ? Sonst kann man nur raten...

Du vermutest es liegt am Caching ? (Glaube ich zwar nicht ... ) , aber im Page_Load Event kannst du folgendes einfügen :


   Response.Buffer = true;
            Response.ExpiresAbsolute = DateTime.Now.AddDays(-1d);
            Response.Expires = -1500;
            Response.CacheControl = "no-cache";

            Response.Cache.SetNoStore();
            Response.Cache.SetCacheability(HttpCacheability.NoCache);

(Handelt es sich überhaupt um WebForms oder um MVC ?)
Damit schaltest du das Caching für diese Seite aus.

Beste Grüsse

Diräkt

27.08.2012 - 12:11 Uhr

Hallo jogisarge

Ich möchte mich da in WPF einarbeiten, es sollte keine Web-Applikation sein.

Dann schau Dir mal RIA Services an.

Beste Grüsse

Diräkt

27.08.2012 - 11:23 Uhr

Hallo Gogeta

doch sobald ich auf ein "Button - Aktualisieren" klicke soll er kurz ein abgleich mit der Datenbank machen und sobald neue Datensätze verfügbar sind

Warscheinlich hast du ja eine Increment ID als PK. Neue Datensätze = alle die eine höhere ID haben, als jene die du bereits hast. (z.B).

und wenn ich das Programm schließe sollen die zuletzt geladenen Datensätze im DataSet gespeichert werden

Schau dir mal Serializing an.

Beste Grüsse

Diräkt

27.08.2012 - 11:20 Uhr

Hallo jogisarge

Wie Abt bereits geschrieben hat, ist WCF das Richtige für dein Szenario.

Wenn ich Dein Beispiel aber so durchlese :

Ich stelle mir das so vor, dass die Clients eine Suchanfrage (Beispiel - Artikelstamm) an den Server schicken und dann die Antwortliste vom Server zurückkommt.

Wäre ggf. auch eine Web-Applikation eine gute Wahl 😉

Beste Grüsse

Diräkt

26.08.2012 - 14:33 Uhr

Hallo Sareth

Vielleicht wäre es doch noch hilfreich uns den Fehler mitzuteilen ? 😃

Beste Grüsse

Diräkt

24.08.2012 - 15:56 Uhr

Hallo ModelViewPresenter

Das ist wirklich sehr unsauber, und gleicht eher einem Hack der absolut nicht notwendig ist...

Hier gibts ein FAQ Artikel dazu : [FAQ] Kommunikation von 2 Forms

Demgegenüber steht nun, dass man der einen Form die Referenz auf die andere mitgibt, um darauf zugreifen zu können.

Das wäre schon einiges besser. Ich würde die Kommunikation über Events machen (siehe FAQ)

Beste Grüsse

Diräkt

22.08.2012 - 09:49 Uhr

Hallo 😃

Die Setup Projekt - Templates wurden vom VS2012 entfernt 😦

Habe als Alternative eigentlich nur WiX gefunden.
Dazu habe ich gehört, es sei "nicht so stabil", daher wurde es auch nicht ins VS2012 integriert.

Kennt jemand Alternativen ? Wie krieg ich meine Setup-Projekte zurück ? (nicht Once-Click...)

Beste Grüsse

Diräkt

21.08.2012 - 07:22 Uhr

Hallo Adleano

SendKeys ist dein Freund !

Beste Grüsse

Diräkt

18.08.2012 - 20:15 Uhr

Hallo Coder007

Ich hab ein "ähnliches" Verhalten mal festgestellt, wenn nicht "standard Tags" verwendet wurden...

Folgendes Vorgehen würde ich anraten:
=> Versuche ein 100% valides XML zu laden
===> Sollte es funktionieren, stimmt irgendwas an Deinem Dokument nicht.

(ggf. kannst es posten ?!)

Beste Grüsse

Diräkt

18.08.2012 - 19:46 Uhr

Hallo t0mmi

Im Prinzip werden ASCII kodierte Serialisierungen von einigen Klassen übertragen, welche am Server wieder deserialisiert und ausgewertet werden.

Schau Dir mal WCF an.

Beste Grüsse

Diräkt

17.08.2012 - 10:51 Uhr

Beschreibung:

Da nun die Methode HashPasswordForStoringInConfigFile obsolete ist, hier die Alternativen.

Diese Methode liefert das selbe Resultat wie die oben gennante Methode.
Aufruf Beispiel:

HashString("MeinString","SHA1");


public string HashString(string inputString, string hashName)
    {
        HashAlgorithm algorithm = HashAlgorithm.Create(hashName);
        if (algorithm == null)
        {
            throw new ArgumentException("Unrecognized hash name", "hashName");
        }
        byte[] hash = algorithm.ComputeHash(Encoding.UTF8.GetBytes(inputString));

        return string.Concat(hash.Select(b => b.ToString("X2")).ToArray());
    }

Das ganze kann man theoretisch noch etwas verbessern, in dem man das ganze ein wenig kompakter zurück gibt, das byte[] könnte man dann so zurück geben :

return Convert.ToBase64String(hash);

Mögliche Parameter für hashName findet man bei MSDN, hier der Auszug:

SHA,SHA1,MD5,SHA256,SHA256Managed,SHA-256,SHA384,SHA384Managed,SHA512,SHA512Managed,

Schlagwörter: HashPasswordForStoringInConfigFile, Hash, Password, SHA, MD5