Daten Typ object



  • Hallo,

    warum bekomme ich beim lesen des object Typs Tag eine exeption;
    Beim Member Text gibt es keine Probleme;

    private void tb_TextChanged(object sender, EventArgs e)
            {
                Int16 Data = new Int16();
                textBox1.Text = ((TextBox)sender).Text; //Ok
    
                int BufferOffset = (int)((TextBox)sender).Tag; //exeption
    


  • 1. Was für eine exception?
    2. Ist der Klammernfehler nur ein Typo oder steht das bei dir wirklich so im Code? Wenn ja, kompiliert das tatsächlich, dass int eine Tag Property hätte wär mir ziemlich neu?



  • Hi hermes,

    ich weiß nicht was für eine Exception du bekommst, aber wenn du das ganze so löst:

    private void tb_TextChanged(object sender, EventArgs e)
            {
                Int16 Data = new Int16();
                textBox1.Text = ((TextBox)sender).Text; //Ok
    
                int BufferOffset = Convert.ToInt32(((TextBox)sender).Tag);
            }
    

    sollte es gehen.
    Gruß!



  • @hermes:
    Für die Zukunft: Bemühe doch erstmal selber den Debugger und schau von welchem Typ der Tag ist, vielleicht ist es kein Int16. Aber wie gesagt, schau in Debugger oder schau da wo du den Tag füllst und überprüfe ob die werte richtig sind.



  • RandomUserName schrieb:

    Hi hermes,

    ich weiß nicht was für eine Exception du bekommst, aber wenn du das ganze so löst:

    private void tb_TextChanged(object sender, EventArgs e)
            {
                Int16 Data = new Int16();
                textBox1.Text = ((TextBox)sender).Text; //Ok
    
                int BufferOffset = Convert.ToInt32(((TextBox)sender).Tag);
            }
    

    sollte es gehen.
    Gruß!

    Das Funktioniert, danke Dir!



  • Guck Dir mal diesen Link zum Thema Boxing und Unboxing an...

    http://msdn.microsoft.com/en-us/library/yz2be5wk.aspx


Log in to reply