0

当我开发 ConsoleApp 时,在我的 Main 中使用我在单独文件中创建的类没有问题(项目菜单 --> 添加类)。但后来,当我尝试在 WPF 中执行此操作时,该类无法识别。我确保命名空间在我的“MainWindow.xaml.cs”和我的 Class Canal.cs 中都是相同的。当我在MainWindow.xaml.cs中定义同一个类时,一切正常,但由于代码的扩展,我更喜欢将其分开。

MainWindow.xaml.cs:

//using      
 namespace Tcomp
    {
     public partial class MainWindow : Window
            {
        void MainWindow_Loaded(object sender, RoutedEventArgs e)
                { //Stuff but I can't use class created outside of MainWindow.xaml.cs
}
}
}

运河.cs

//using
    namespace TComp
    {
        public class Canal
        { //some propreties here
    }
    }

谢谢。

4

3 回答 3

0

在库项目中创建类,而不是在控制台应用程序上。在您的 WPF 项目中,将项目引用添加到您创建的库项目中。

于 2013-05-09T05:32:24.763 回答
0

@mcxiand 已经回答了你的问题。我想添加另一个选项:您可以使用

public partial class MainWindow : Window

并将其添加到包含代码的任意数量的文件中,因此无需创建额外的类库。这里的关键词是partial,它允许封装在这个类中的代码分布在多个文件(.cs)中。

于 2013-05-09T05:38:33.613 回答
0

您必须实例化 Canal 类:

var myClass = new Canal();

然后你可以使用它的属性。使 myClass 成为 MainWindow.xaml.cs 的私有成员,您可以随时访问它。或者第二种方式,使 Canal 类静态,然后你可以从任何地方访问它。希望这可以帮助。

于 2013-05-09T06:04:19.327 回答