Laden...

Forenbeiträge von serial Ingesamt 902 Beiträge

18.02.2009 - 10:59 Uhr

Hallo,

ich habe einen einfachen Webservice geschrieben, welchen ich asynchron aufrufen möchte.

Nun meine frage: Werden die Begin und Endmethoden eigentlich automatsich generiert (hab das wohl mal irgendwo gelesen), oder muss ich diese per hand schreiben??

mfg
serial

04.02.2009 - 12:45 Uhr

und was ist BaliseTelegram für ein Typ?

21.01.2009 - 11:47 Uhr

Hallo Dennis,

darf ich fragen von welcher Programmiersprache du kommst?? Vielleicht Delphi?

Wenn dem so ist gewöhn dir bitte das "var" Schlüsselwort in C# ganz schnell wieder ab..

C# ist typsicher. Aber du hebst durch dein "var" diese Typsicherheit auf.

Daraus resultiert wahrscheinlich auch der Fehler, da die aufzurufende Methode nicht erkennt, welche Typen du ihr als Parameter reingeben willst..

menti

oder er benutzt einfach c# 3.0, wo es das var - schlüsselwort durchaus gibt und auch typsicher ist.

mfg
serial

19.01.2009 - 22:22 Uhr

if(!IsPostback)
 //hier daten füllen

mfg serial

19.01.2009 - 22:16 Uhr

hallo,

möglicherweise indem du sie nur füllst mit daten, wenn IsPostback gleich false ist.
Sonst füllst du sie bei jedem Serverroundtrip neu.

mfg
serial

19.01.2009 - 15:20 Uhr

ok, das problem war der callback....da wird der viewstate ja nicht neu übertragen.

Mit postback gehts.!

19.01.2009 - 13:16 Uhr

Hallo,

ich habe gerade zu testzwecken ein WebContol geschrieben, welches eine Liste von Daten enthält (dateTimes), diese Liste implementiert das IStateManager interface:

Liste:


public class DateCollection:List<DateTime>,IStateManager
    {
        private bool _trackingVS = false;

        #region IStateManager Member

        public bool IsTrackingViewState
        {
            get { return _trackingVS; }
        }

        public void LoadViewState(object state)
        {
            if (state != null)
            {
                object[] o = (object[])state;
                foreach (object ob in o)
                {
                    DateTime curTime = (DateTime)ob;
                    if (curTime != null)
                        this.Add(curTime);
                }
            }
        }

        public object SaveViewState()
        {
            object[] toReturn = new object[this.Count];
            for (int i = 0; i < this.Count; ++i)
            {
                toReturn[i] = this[i];
            }
            return toReturn;
        }

        public void TrackViewState()
        {
            _trackingVS=true;
        }

        #endregion
    }
}

in meinem Control verwende ich diese


 private DateCollection _selectedDates = new DateCollection();

        public DateCollection SelectedDates
        {
            get { return _selectedDates; }
            set { _selectedDates = value; }
        }

und überschreibe die entsprechenden Funktionen


 protected override void LoadViewState(object savedState)
        {
            object[] o = (object[])savedState;
            if (savedState != null)
            {
                _selectedDates.LoadViewState(o[0]);
                base.LoadViewState(o[1]);
            }
        }

protected override object SaveViewState()
        {
            object[] o = new object[2];
            o[0] = _selectedDates.SaveViewState();
            o[1] = base.SaveViewState();
            return o;
        }

und in einer callbackbehandlng füge ich der auflistung ein objekt hinzu


public void RaiseCallbackEvent(string eventArgument)
        {
            string s = eventArgument;
            string[] parts = new string[3];
            parts[0] = s.Substring(0, 2);
            parts[1] = s.Substring(2, 2);
            parts[2] = s.Substring(4, 4);

            string real = string.Join(".", parts);
            DateTime dt = Convert.ToDateTime(real);
          _selectedDates.Add(dt);
        }

wenn ich nun dieses Contl in einer .aspx Seite verwende, und mir bei buttonclick die liste anzeigen lasse, ist sie immer leer:


protected void Button1_Click(object sender, EventArgs e)
        {
            int selected = HorizontalCalendar1.SelectedDates.Count;
            Response.Write(selected);
        }

was mache ich hier falsch, oder ist IStateManager dafür nicht geeignet?

mfg
serial

16.01.2009 - 17:12 Uhr

allerdings weiss ich nicht was ich mit diesem val anfange soll
Aber diesen Wert wolltest du doch, oder? 👶
Ein Wert davon sollte z.B. jetzt dem Namen des Autors entsprechen.

Oder habe ich dein Problem falsch verstanden?

nein völlig richtig!
Allerdings ist val nicht immer das objekt, sondern manchmal ein RuntimeObjekt...
mfg
serial

16.01.2009 - 17:12 Uhr

gut habs gelöst....stand auf dem schlauch....!
val hat natürlich nicht immer den richtigen wert, muss man die esception abfangen und weitermachen...

mfg
serial

16.01.2009 - 16:24 Uhr

Hallo winSharp,

ich habe es so angepasst:


foreach (Type t in types)
                {
                    if (t != null)
                    {
                        try
                        {
                            object[] atts = t.GetCustomAttributes(true);
                            if (atts != null)
                            {
                                foreach (object o in atts)
                                {
                                    if (o.GetType().Name == attributeName)
                                    {
                                        PropertyInfo[] props = o.GetType().GetProperties();
                                        foreach (PropertyInfo prop in props)
                                        {
                                            object val = prop.GetValue(o, null);
                                        }
                                    }
                                }
                            }
                        }
                        catch (Exception)
                        {
                            continue;
                        }
                    }
                }

allerdings weiss ich nicht was ich mit diesem val anfange soll =(
Heute ist freitag...

mfg serial

16.01.2009 - 15:29 Uhr

Hallo,

ich wollte mal fragen ob es eine möglichkeit gibt, die Attributewerte von Klassen aus externen Assemblies auszulesen, OHNE das mit die Attributeklassen direkt bekannt sind.

Beispiel:

In Assembly a.dll habe ich eine Klasse MyClass mit dem Attribute Autor.
Auto ist eine von Attribute abgeleitete Klasse mit dem Namen des Autors.

Nun habe ich ein Programm, welches die a.dll lädt und nach Klassen sucht, welches dieses Attribute benutzen!
Den Attributename hat das ladende Programm nur als string zur Verfügung:

Beispielcode:
Die unklare Stelle ist mit Kommentar gekennzeichnet


foreach (Type t in types)
                {
                    if (t != null)
                    {
                        try
                        {
                            object[] atts = t.GetCustomAttributes(true);
                            if (atts != null)
                            {
                                foreach (object o in atts)
                                {
                                    if (o.GetType().Name == "AutorAttribute")
                                    {
                                       //wie kann ich nun hier die Werte dieses Attributes auslesen??
                                    }
                                }
                            }
                        }
                        catch (Exception)
                        {
                            continue;
                        }
                    }
                }

Etwas in der Art:


AutorAttribute[] attributes = (AutorAttribute[])info.GetCustomAttributes(typeof(AutorAttribute), false);

kann ich nicht verwenden, da im ladenden Programm das AutorAttribute nicht bekannt ist.

Wie gehe ich hier am sinnvollsten vor?

mfg
serial

16.01.2009 - 15:03 Uhr

ok, Problem gelöst!

War wirklich etwas blind, sorry!

Die geladenen Typen finden sich im Exceptionobjekt wieder...

mfg
serial

16.01.2009 - 14:49 Uhr

@ujr: irgenwie willst mich nicht verstehen!
Die Exception fliegt schon beim auslesen der types! Es geht in keine schleife oder sonstwas sondern direkt ins catch!
Da die Exception fliegt wird auch das Type-Array nicht gefüllt weil von GetTypes nichts zurückgeliefert wird....und das ist mein problem.

Gibt es da keine möglichkeit an die typen zu kommen, die OHNE Exception gelesen werden können?

mfg
serial

16.01.2009 - 13:05 Uhr

würde eben mit den anderen typen weiter arbeiten, weiss aber nicht genau wie!

wieso?
Die Exception wird bei GetTypes() geworfen und types ist dann null, also komplett leer!
Ich möchte eben diese exceptionj ignorieren das er trotzdem die typen liest!

mfg
serial

15.01.2009 - 15:45 Uhr

Hallo,

ich möchte alle typen aus einer assembly laden, bekomme aber einen LoaderException,
würde allerdings die restlichen types trotzdem laden...und nicht abrechen!

Folgender Code:


try
            {
                Type[] types = _currentLoaded.GetTypes();
                foreach (Type t in types)
                {
                    object[] atts = t.GetCustomAttributes(true);
                }
            }
            catch (ReflectionTypeLoadException ex)
            {
                foreach (Exception e in ex.LoaderExceptions)
                {
                    
                }

            }

ich bekomme bei einem typ diese exception, das interessiert mich allerdings nicht und würde eben mit den anderen typen weiter arbeiten, weiss aber nicht genau wie!

Hab sicher nur tomaten auf den augen.
Hoffe mir kann jemand helfen.

mfg
serial

13.01.2009 - 17:55 Uhr

hallo,

ja es kommt ein postback, der buttonclick wird ausgeführt und auch die OnDetailClicked Methode, allerdings ist das DetailClicked-Event immer NULL

mfg
serial

13.01.2009 - 17:30 Uhr

Hallo,

ich habe folgendes Problem.

Ich ahbe eine abstracte Basisklasse für UserControls erstellt, diese bietet ein Event an.
Das Event wird auch in der abstrakten basisklasse über eine OnxxxMethode gefeuert.

Das entsprechende Control wird in einer .aspx Seite im Init geladen und da wird auch das Event gebunden, allerdings kommt es nie an, da in der abstrakten Basisklasse das event immer NULL ist.

Code:

abstrakte Basisklasse:


public abstract class EventmateControlBase : System.Web.UI.UserControl
    {
        

        #region Member für EventmateList-Controls

        /// <summary>
        /// Wird gefeuert wenn ein Detaildatensatz angeklickt wird
        /// </summary>
        public event EventHandler<EventmateEventDetailClickedEventArgs> DetailClicked;
        
     

        /// <summary>
        /// Löst das DetailClicked-Event aus
        /// </summary>
        /// <param name="detailId">Die ID des Datensatzes</param>
        /// <param name="detailType">Der Typ des Containers, benötigt zum casten</param>
        /// <param name="detailData">Der Datencontainer</param>
        protected void OnDetailClicked(int detailId, Type detailType, object detailData)
        {
            if (DetailClicked != null)
                DetailClicked(this, new EventmateEventDetailClickedEventArgs(detailId, detailType,detailData));
        }

        #endregion

das implementierende control


public partial class FE_EventListe1 : EventmateControlBase
    {
        protected void btn_Click(object sender, EventArgs e)
        {
            Button b = (Button)sender;
            string value = b.CommandArgument;
            EventmateDate detailDate = ((EventmateDates)EventmateItems)[Convert.ToInt32(value)];
            OnDetailClicked(Convert.ToInt32(value), typeof(EventmateDate), detailDate);
        }  
    }

der Button wird in der ascx Datei deklarativ im repeater angeordnet.

Die aufrufende aspx - Seite


EventmateControlBase _baseControl;
        protected override void OnInit(EventArgs e)
        {
            _baseControl = (EventmateControlBase)LoadControl("frontend/controls/FE_EventListe.ascx");
            _baseControl.DetailClicked += new EventHandler<RegionalPortal.Modules.VAKalender.classes.events.EventmateEventDetailClickedEventArgs>(_baseControl_DetailClicked);
            PlaceHolder1.Controls.Add(_baseControl);
            FE_EventListe1.EventmateItems = EventmateDateDataLayer.GetWithEvents();    
            base.OnInit(e);
        }

        protected void _baseControl_DetailClicked(object sender, EventmateEventDetailClickedEventArgs e)
        {
            if (e.DetailType == typeof(EventmateDate))
            {
                EventmateDate date = e.Data as EventmateDate;
               //do something
            }
            
        }
    }

Es wird in dem Control das ButonClic-Event aufgerufen und auch das OnDetailClicked in der abstraken Basisklasse, allerdings ist das Event immer NULL. Wieso?

Vielleicht kann mir hier jemand helfen

11.01.2009 - 20:41 Uhr

Hallo,

also Ihr habt schon recht, auf Interfaces kann ich verzichten.

Mir haben eben einige Beitäge zu diesem Thema zu denken gegeben (abstr. Klasse für Elemente welche logisch fast gleich sind, und Interfaces für komplett unterschiedliche Objekte).

Mein Zweck ist eben folgender:

Ich erstlle verschiedene UserControls die in 3 Gruppen geteilt sind.
Jede Gruppe hat ihre eigenen Eigenschaften und Methoden.

Die Gruppen unterscheiden sich untereinander stark.

Nun möchte ich aber eine Klasse, welche Controls, egal von welcher Gruppe, verwalten kann, und auch dessen Member benutzt.

Darum dachte ich eben an eine abstrake Basisklasse....mein Zweifel kam eben auf Grund der komplett unterschiedlichen Methoden und Eigenschaften der verschiedenen Gruppen.
Aber die abstrakte Klasse könnte ja Zugriffe auf nicht implementierte Methoden zentral behandeln.
Weiterhin gibt es teilweise gleiche funktionalitäten die gleich in der basisklasse ausgeführt werden, und nur teile durch die Controls selbst implementiert werden (template methode).

Also ich denke ich bin hier mit der abstrakten Klasse wirklichrichtig dran und verzichte auf Interfaces.

Danke euch allen

10.01.2009 - 00:56 Uhr

Hallo Spook,

weil mir da mein compiler sagt das ich die funktionen meiner interfaces nicht implementiere...

mfg
serial

09.01.2009 - 17:38 Uhr

Hallo Peter,

theoretisch hast du recht.
Muss das nochmal kurz überdenken.....kann wohl auf die seperaten interfaces wirklich verzeichtn, benötige sie glaub ich garnicht einzeln...!

ABER WENN, wie würde ich dann am besten vorgehen?

mfg
serial

09.01.2009 - 17:36 Uhr

fehler gefunden,

habe beim Invoke das Control vergessen mit anzugeben.

mfg
serial

09.01.2009 - 17:34 Uhr

Hallo Peter,

habe das beispiel versucht umzusetzen:


public partial class MyListControl : System.Web.UI.UserControl,IListcontrol
    {
        string _name;

        public MyListControl()
        {
            _name = "Standard";
        }

        public MyListControl(string name)
        {
            _name = name;
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            Response.Write(_name);
          
        }
    }

aufruf


protected override void OnInit(EventArgs e)
        {
            base.OnInit(e);
            MyListControl ctl = (MyListControl)LoadControl("MyListControl.ascx", "Hallo" );
            PlaceHolder1.Controls.Add(ctl);
           
        }

        private UserControl LoadControl(string controlPath, params object[] objectParams)
        {
            List<Type> constParamTypes = new List<Type>();
            foreach (object o in objectParams)
            {
                constParamTypes.Add(o.GetType());
            }

            UserControl ctl = Page.LoadControl(controlPath) as UserControl;

            ConstructorInfo ctrInfo = ctl.GetType().BaseType.GetConstructor(constParamTypes.ToArray());

            if (ctrInfo == null)
                throw new MemberAccessException("Kein passender Konstruktor gefunden");
            else
            {
                ctrInfo.Invoke(objectParams);
            }

            return ctl;
        }
    }

der parametrisierte konstruktor wird nach dem parameterlosen aufgerufen ( im debugger festgestellt), soweit ok.
Allerdings gibt er mit immer "Standard" aus, wieso?

mfg
serial

09.01.2009 - 17:31 Uhr

Hallo See Sharp,

das mit dem zusammenfassen im Interface ist mir klar, allerdings soll die basisklasse noch einige methoden selbstständig ausführen und implementieren, aber eben nicht alle!

Ein großteil der interface-methoden soll "durchgereicht" werden...

mfg
serial

09.01.2009 - 17:10 Uhr

Hallo,

ich habe mehrere Interfaces für verschiedene Controls.

Nun möchte ich eine abstrakte basisklasse erstellen, welche alle diese Interfaces "implementiert", aber nur um sie "weiterzugeben".

Ich möchte quasi das meine controls nicht die interfaces implementieren, sondern diese basisklasse.

Allerdings kann ich ja die in den interfaces deklarierten methoden/properties in der klasse nicht als abstrakt kennzeichnen, somit werden die implementierenten controls nicht gezwungen die methoden zu überschreiben.
Ich könnte natürlich die abstrakte basisklasse als eine art adapter fungieren lassen, und um die methoden der interfaces einfach eine abstracte wrappermethode hüllen.

Aber geht es nicht besser?

Sinn und zweck ist, das ich eine Collection von der abstrakten Basisklasse haben möchte, egal welches Interface das Control selbst implementieren würde.

Wie kann ich soetwas am besten abbilden?

mfg
serial

09.01.2009 - 15:51 Uhr

ok, habe antwort wohl selbst gefunden.

Es ist wohl so, das die Überladung nciht die .ascx Datei parst, und somit keine Controls "findet".

Sollte ich mir irren, würde ich mich freuen 😉

mfg
serial

09.01.2009 - 15:07 Uhr

Hallo,

ich habe ein UserControl, welches ein GridView (per Designer draufgezogen enthält).

Dieser wollte ich mit der Überladung der LoadControl-Methode laden um dem Konstruktor Parameter zu übergeben.

Im PageLoad des Controls binde ich das Gridview an eine Liste.

IM PageLoad einer .aspx Seite möchte ich nun das Control laden und einem Placeholder hinzufügen, allerdings ist im PageLoad des Controls das GridView immer NULL.
Lade ich es normal mit LoadControl(string) ist das GridView nicht null.

Woran liegt das?

Hier mal das Control:


public partial class MyListControl : System.Web.UI.UserControl,IListcontrol
    {
        string _name;
        IList _items;
        public MyListControl()
        {
            _name = "Standard";
        }

        public MyListControl(string name)
        {
            _name = name;
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                if (Items != null)
                {
                    Persons p = (Persons)Items;   
                    GridView1.DataSource = p;
                    GridView1.DataBind();
                }
            }
            catch (Exception ex)
            {

            }
        }

        #region IListcontrol Member

        public System.Collections.IList Items
        {
            get
            {
                return _items;
            }
            set
            {
                _items = value;
            }
        }

        #endregion
    }

und hier wird es geladen:


 protected override void OnInit(EventArgs e)
        {
            MyListControl ctl = (MyListControl)LoadControl(typeof(MyListControl), new object[] { });
            ctl.Items = ListHelper.GetList(1);
            PlaceHolder1.Controls.Add(ctl);
            base.OnInit(e);
        }

mfg serial

07.01.2009 - 10:21 Uhr

Hallo GMLOD

das ist mir klar, ich war mir bei der vorgehensweise nicht sicher, ob er alle rows updated, auch wenn mittendrin eben diese uniquekey-einschränkung gebrochen wird (er also einzelne rows nicht hinzufügt)...

mfg
serial

06.01.2009 - 16:29 Uhr

ich glaube ich habe das problem behoben!

Einfach bei dem Adapter


archivAdapter.ContinueUpdateOnError = true;

mfg
serial

06.01.2009 - 16:17 Uhr

ja, selbes ergebnis!

Möglicherweise wird eine art status in der archiv DataTable gesetzt?

mfg
serial

06.01.2009 - 16:09 Uhr

Hallo,

ich wusste nicht genau wie ich die problematik ausdrücken sollte.

Hier gleich mal der code


 foreach (DataRow row in archivDatas.Rows)
            {
                try
                {        
                    archiv.ImportRow(row);
                    archivAdapter.Update(archiv);
                }
                catch (SqlException ex)
                {
                    continue;
                }
            }

mein ziel ist es einer vorhandenen tabelle neue rows hinzuzufügen.
Einige der neuen rows sind allerdings schon vorhanden (identifikation durch eine unique_id welche eine eindeutigkeitseinschränkung hat).

So, soll nun eine row hinzugefügt werden, welche den selben uniquekey wie eine schon vorhandene hat, kommt eine SqlException....das ist so beabsichtigt.
Diese row möchte ich dann einfach nicht hinzufügen und mit der nächsten weitermachen.
Allerdings kommt nun bei jeder folgenen row auch diese exception, obwohl die uniquekeys nicht gleich sind.

Wie könnte ich dieses problem am besten lösen? (Wahrscheinlich sehe ich nur den baum vor lauter bäumen nicht)...

mfg
serial

05.01.2009 - 11:01 Uhr

danke ich schaus mir mal an! 😉

mfg
serial

04.01.2009 - 14:48 Uhr

Hallo AlfameisterT

ich freue mich schon auf das beispiel 😃

mfg
serial

23.12.2008 - 22:31 Uhr

Hallo Peter,

ich wll einfach eine langsauernder operation asynchron ausführen!
Webservices bieten doch das async-event pattern....?! (oder irre ich mich da?)

Konnte mir eben schlecht vorstellen, das dies wirklich unmöglich ist...:(

mfg
serial

23.12.2008 - 13:07 Uhr

Hallo Peter,

das heisst, es bringt auch nix über einen webservice?
Wie würde man denn sowas dann am besten lösen?

mfg
serial

20.12.2008 - 22:23 Uhr

hm...hat da niemand eine antwort? 😦

mfg
serial

18.12.2008 - 12:31 Uhr

Hallo Peter,

möglicherweise könntest du mir ein kleines beispiel geben?

Wie gesagt, wir haben eie menutabelle, und da gibt es eine spalte sender_id (eben für jede seite, da diese ja unterschiedliche menüs haben)

Ich würde nen dem Provider manuell die senderid übergeben, damit dieser die im sql.statement verwenden kann, und nur die richtigen menüpunkte herausholt (bis jetzt holt er eben alle)...

mfg
serial

18.12.2008 - 12:13 Uhr

Hallo,

meine frage ist, kann ich eine lagdauernde operation (einfügen von datensätzen), welche in einem UserControl ausgeführt wird, asyncron machen?

Habe bis jetzt nur die möglichkeiten für page gesehen!

Geht das auch in einem Control (einfach mit Begin und EndMethoden), oder muss ich das über einen Webservice machen?

mfg
serial

15.12.2008 - 21:39 Uhr

Hallo peter

hm....nun ist der link aber etwas gemein! lol
Naja...vielleicht find ich noch ein beispiel!
Bis jetzt bin ich nicht fündig gewurden... 😦

mfg
serial

15.12.2008 - 16:45 Uhr

Hallo serial

Es wären n Instanzen von einem Provider der parameterisiert werden kann.
Gruss Peter

sorry, vielleicht stehe ich gerade auf dem schlauch, aber was meinst du damit?
Für jede ID einen Provider registrieren?
Die Seite mit den generischen providern funktioniert leider nicht 😦

mfg
serial

15.12.2008 - 16:25 Uhr

danke erstmal

ich brauche nicht mehr provider, denn je nach id sollen ja nur gefilterte daten aus der datenbank kommen, es wird damit nur eine einschränkung in der where-klausel des sqlstatements gesetzt!
Dafür brauch ich ja keinen extra provider....oder?
Somal es 70 verschiedene seiten gibt...

Mir wäre es nur wichtig dem einen Provider die ID mitzugeben, welche er dann in das Sqlstatement setzt....geht das?

mfg
serial

15.12.2008 - 14:47 Uhr

Sorry, ich habe den SqlSitemapProvider (schon oft hier besprochen) verwendet, und an unsere datenstruktur angepasst!

Alelrdings sind in unserer tabelle für die menüs, menüs für verschiedene seiten vorhanden!
Ich brauch eine möglichkeit dem Provider zu sagen, ich will nur das Menu mit der menu_sender_id 1, oder 2 etc...

mfg
serial

15.12.2008 - 13:19 Uhr

Hallo, wie kann ich einem SitemapProvider Daten übergeben?
Ich brauche eine ID um spezielle inhalte zu bekommen, die der provider je nach ID holt.

mfg
serial

09.12.2008 - 18:24 Uhr

oder schau dir mal ICallbackEventHandler an

09.12.2008 - 11:10 Uhr

danke, ich schaus mir mal an 😉

mfg
serial

09.12.2008 - 10:56 Uhr

Mir ist im moment unklar, wie s0h0 das mit einem Panel oder Placeholder zu erledigen gedenkt!?

frager ich mich auch, und bin auf eine antwort gespannt

mfg
serial

09.12.2008 - 10:31 Uhr

Hallo,

ich wollte mich mit dem Microkernelpattern beschäftigen, ahbe aber noch keine guten zusammenhängenden infos gefunden (suche, google).

Hat jemand vielleicht ein paar links oder ähnliches für mich?

Würde mich sehr freuen.

mfg
serial

08.12.2008 - 16:43 Uhr

du kannst den responsetext glaub ich in ein HtmlDocument schreiben, und da gibt es ähnliche funktionen.

berichtigt mich bitte, wenn ich falsch liege!

mfg
serial

02.12.2008 - 10:49 Uhr

Stichwort: IPostBackEventHandler oder ICallbackEventHandler

😉

mfg serial

28.11.2008 - 15:27 Uhr

und er sortiert nicht?
Ich lege das zwar alles deklarativ an, aber bei mir funktioniert es!

mfg
serial

28.11.2008 - 15:22 Uhr

mmn hat das GridView ein integriertes Sortierfeature welches über SortExpression benutzt werden kann?!

mfg
serial