c#从一个窗体到另一个类的输出
您好,我正在创建三种黑巧克力的应用程序。 我有一个windows窗体(从另一个窗体继承)和另一个类 对于我的windows窗体类:c#从一个窗体到另一个类的输出,c#,forms,inheritance,C#,Forms,Inheritance,您好,我正在创建三种黑巧克力的应用程序。 我有一个windows窗体(从另一个窗体继承)和另一个类 对于我的windows窗体类: darkchoco darkco = new darkchoco(); string[] darkType = new string[3] { "Dark Chocolate Truffle", "Dark Chocolate Bar", "Dark Chocolate Almond" }; public string returnType;
darkchoco darkco = new darkchoco();
string[] darkType = new string[3] { "Dark Chocolate Truffle", "Dark Chocolate Bar", "Dark Chocolate Almond" };
public string returnType;
darkco是另一个类。
对于windows窗体中的框,我定义了一个mousedown操作:
private void optionBox1_MouseDown(object sender, MouseEventArgs e)
{
optionBox1.DoDragDrop(optionBox1.Text,
DragDropEffects.Copy);
returnType = darkType[0];
darkco.darkType = returnType;
对于我的darkco课程,我有:
public string darkType;
public override string ToString()
{
return "For dark chocolate, you have selected: " + darkType;
}
我不知道为什么黑巧克力没有出现,唯一能让我们看到的是“对于黑巧克力,你选择了:”然后什么都没有。我的问题是我的代码哪里错了,导致darkType没有出现
期待修复,谢谢 您的示例不完整。如何将巧克力类型转移到您的darktype类?我不确定您的darktype变量是否属于darktype类。我期待着这样的事情。现在,您可以使用chocolate类型作为构造参数来构造darco类。您还可以向属性添加逻辑
public class darco
{
public string darktype { set; get; } = String.Empty;
public darco( string mydarktype)
{
darktype = mydarktype;
}
public override string ToString()
{
return "For dark chocolate, you have selected: " + darkType;
}
}
当您需要返回的字符串时,您如何尝试从
darkchoco
检索数据?如果您使用的是darkchoco darkco=new darkchoco()
,则您正在创建该类的新实例,并且darkType
变量将为null。尝试将darkchoco
设置为一个公共静态类darkchoco
,并通过darkchoco.MethodToReturnString()
访问它,看看它是否有效。尝试将调试器放在选项框1\u MouseDown方法-darkco.darkType=returnType;中;。看看你得到了什么。