2016-07-23 14 views
0

Ich möchte Werte von einer Klassendatei an eine andere Klasse übergeben.Wie übergeben Sie Werte von einer Klasse zu einer anderen Klasse mit WPF?

Z. B:

Schritt1:

Class1.cs

public class Class1 
    { 
     public string LogedInPerson { get; set; } 

     public string Name 
     { 
      get { return this.LogedInPerson; } 
      set { this.LogedInPerson = value; } 
     } 
    } 

Schritt 2:

Wert wurde unter Methode zugeordnet in:

test.xaml.cs

public void assignValue() 
{ 
    Class1 obj = new Class1(); 
    obj.LogedInPerson = "test123"; 
} 

Schritt 3:

Ich möchte "test123" Werte von Class2.cs erhalten.

ZB:

public void test() 
     { 
      string selected_dept = ?? //How to get "test123" from here. 
     } 

Antwort

2

initialisieren Class1 außerhalb assignValue() methos

Class1 obj = new Class1(); 

public void assignValue() 
{ 

    obj.LogedInPerson = "test123"; 
} 
public string returnValue() 
{ 

    return obj.LogedInPerson; 
} 

, wenn Ihr zweiter Klasse Name test.xaml dann es so nennen, aber ich glaube nicht, dass Sie test.xaml Klassennamen verwenden können, so verwenden Sie stattdessen einen schönen Namen zB: Class2

public void test() 
{ 
    test.xaml test = new test.xaml(); 
    test.assignValue(); 
    string selected_dept = test.returnValue(); //How to get "test123" from here. 
} 
+0

viel dank ..... funktioniert gut. – dhamo

+0

Sie sind herzlich willkommen :) – Mostafiz

0

Ich glaube, dass diese Frage mehr zum Thema der objektorientierten Grundlagen der objektorientierten Programmierung geht, nicht so sehr zu WPF-spezifischen Funktionen. Daher werde ich Ihnen eine nicht WPF-spezifische Antwort geben, die es mir ermöglicht, Ihre Frage auf die direkteste Weise anzusprechen.

In OOP kann eine Methode ein Ergebnis an den Aufrufer zurückgeben. So zum Beispiel

public string GetReturnObject(){ 

    return "This is a return object"; 

} 

Sie können ein neues Objekt erstellen und es zurück an den Aufrufer übergeben,

public void Test(){ 

    string data = GetReturnObject(); 

} 

Und jetzt data wird das Objekt zugewiesen werden, die von der Methode zurückgegeben wurde, die Test() genannt . Also, wenn Sie durch das Hinzufügen einer Rückgabetyp Ihre AssignValue Methode ändern und Leiten des instanziiert Class1 Objekt zurück an den Anrufer, haben Sie die Antwort, die Sie benötigen

public Class1 assignValue() 
{ 
    Class1 obj = new Class1(); 
    obj.LogedInPerson = "test123"; 
    return obj; 
} 

Hoffnung, das hilft.

3

Sie können eine Variablenklasse haben, die öffentliche Variablen enthält. Definieren Sie die Instanz class1 in der Variablenklasse.

public static class1 myclass=new class1(); 

in test.xml.cs Sollwert

public void assignValue() 
{ 
myclass.LogedInPerson = "test123"; 
} 

in Klasse 2.cs

public void test() 
    { 
     string selected_dept = myclass.LogedInPerson; 
    } 
Verwandte Themen