2016-06-17 25 views
0

私はWPFを作成しています。実行したい別のプロセス用のサイドメニューも作成しました。現在、私のコードはすべてmainwindoe.xaml.csにあります。私は別ファイルに分割したいと思います。たとえば、あるファイル内のmenuitem1コード、別のファイル内のmenuitem2コードなどです。私はこのメソッドを好みます。私はそれがよりクリーンでメンテナンスしやすいと感じています。しかし、私はプロジェクト - >ページの追加 - >クラスをやってみましたが、新しいページでコードを参照する方法はわかりません。どんな助けでも大歓迎です。WPFでMainWindow.xaml.csのcsファイルを参照して使用するには

は、あなたのクラスファイルに次のを持っている、まあ、 ケント

+2

実行したいプロセスがわからないと、コーディングの基本についての質問になります。これが簡単にこれに答えることができるかどうかは分かりません。たぶん、C#について読むのに良い場所の提案は、より良い方法です:http://www.tutorialspoint.com/csharp/。あなたの質問によると**トピック**カプセル化** http://www.tutorialspoint.com/csharp/csharp_encapsulation.htm。 – C4u

答えて

0

をすることができますすべて入れて同じ名前空間または名前のない名前空間のファイル。そして、あなたはC#でクラスを扱わなければなりません。あなたは、少なくともに別の名前空間からのアクセスに必要なクラスを設定する必要が

例えば

  • yourapp.mainwindoe
  • yourapp.menuitem1
  • yourapp.menuitem2

Addionally内部セキュリティの設定。

namespace yourapp.mainwindoe 
{ 
    class YourClass 
    { 
     internal static YourMethod() 
     { 
      yourapp.menuitem1.YourOtherMethod(); 
     } 
} 

namespace yourapp.menuitem1 
{ 
    class YourClassOther 
    { 
     internal static YourOtherMethod() 
     { 
      // do something here... 
     } 
} 
1

ありがとう:

namespace myNamespace 
    { 
     public class MyClass 
     { 
      public void MyMethod() { } 
     } 
    } 

のは、あなたがMYDLL.DLLという名前のアセンブリでこれを持っていると仮定しましょう。次のようにあなたはそれを使用したい:

  1. あなたがmyNamespaceを使用して名前空間を含めるソリューションエクスプローラ
  2. MyDll.dllへの参照を追加します。
  3. その後、あなたは数2のように名前空間を追加しない場合、あなたのようなあなたのクラスを使用すると思いMyClass test = new MyClass();

をやって、あなたのクラスを使用することができます。

myNamespace.MyClass test = new myNamespace.MyClass(); 
+0

こんにちは@ user6449566、私の新しいクラスから.dllを作成する必要はありますか? – Cass

+0

これは単なる例であり、クラスがどのような名前であれ呼び出すだけです! – user6449566

関連する問題