問題タブ [regions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
7 に答える
12465 参照

c# - Visual Studio でリージョンを非表示にする

VS コードの折り畳みの問題が古臭いことは知っていますが、閲覧した他のすべてのディスカッションでこれを見つけることができませんでした。

私たちには C# 担当者のチームがあり、地域が好きな人もいれば嫌いな人もいます。

リージョンを「隠す」だけの VS 用のプラグインまたはアドインはありますか? そのため、それらを必要とするユーザーには通常どおり表示されますが、アドインをインストールして .cs ファイルを表示するユーザーには、リージョンが存在しないかのように表示されません。

コードを移動すると、特定のメソッドが間違った領域内または領域外にあるという問題が発生する可能性があることがわかりますが、それはチームが満足しているトレードオフである可能性があります...

0 投票する
6 に答える
1333 参照

c# - 長いswitch/enum宣言内でリージョンを使用しますか?

私は最近、C#コードで途方もなく長いswitchステートメントとenum宣言を定義する必要があることに気づきました(はい、必要です)が、論理的なサブセクションにそれらを分割するための最良の方法は人々がどのように感じているのか疑問に思います。私の状況では、列挙値とケース(列挙値に基づく)の両方にかなり明確なグループ化がありますが、これをコードに反映する方法が少しわかりません。

私のコードでは、それぞれ10から30の列挙値/ケースのおよそ5つのグループがあることに注意してください。

私が想像できる3つの漠然とした賢明なオプションは次のとおりです。

  1. 宣言内のケース/列挙値のすべての論理グループの周りにブロックを定義#regionします(オプションで空白行で区切ります)。
  2. 各グループに名前を付けてコメントします。各グループ名のコメントの前に空白行を付けます。
  3. 何もしません-スイッチ/列挙型をケース/値の巨大なリストとして残すだけです。

どっちがいい?列挙型とスイッチを別々に扱いますか?(これは私には少し奇妙に思えます。)今、私はこの質問に対する正しい/間違った答えがあるとは言いませんが、それでも私は意見の一般的なコンセンサスが何であるかを聞くことに非常に興味があります。

注1: 50/100以上の値の非常に長い列挙型宣言が発生する可能性があるこの状況は、残念ながら(スイッチでも同様に)避けられません。これは、レクサー(トークン)を作成しようとしているためです。いくつかの理由で最も合理的なアプローチ。

注2:一般的なコード(主にクラスの構造化)でリージョンを使用するかどうかについては、すでにいくつかの重複する質問が存在することを十分に認識していますが、ここでの質問ははるかに具体的であり、まだ対処されていないと思います。

0 投票する
2 に答える
808 参照

wpf - コンポジット WPF アプリケーションのネストされたメニュー領域

複合 WPF アプリケーションで領域をネストすることは可能ですか? モジュールで新しいメニューを挿入できるようにしたいのですが、既存のメニューにメニュー項目を挿入できるようにしたいです。

次のコードを使用するとRegionManager、例外がスローされます。

MainFileMenuRegionリージョン マネージャにリージョンが含まれていません

0 投票する
6 に答える
15167 参照

java - .NET で #region/#endregion に似たコードを整理する方法は?

コードが大きくなるにつれて、すべてを適切に整理することがますます難しくなっています。私が .NET で開発したときにとても気に入ったのは #region/#endregion でした。これにより、コードを論理的なグループに整理でき、さらに整理しやすくなりました。

Javaで同様のコード編成が可能かどうかを知っている人はいますか?

0 投票する
4 に答える
8586 参照

visual-studio-2008 - VisualStudioの2008で#regionの色を変更する方法

私は気が狂うかもしれませんが、私の一生の間、VS2008で折りたたまれた領域の色を変更するオプションを見つけることができません。

たとえば、次のコードがある場合:

ここでその領域を折りたたむと、「テスト領域」というタイトルが灰色のテキスト色で表示され、その周りに灰色のボックスが表示されます。

0 投票する
2 に答える
1571 参照

visual-studio-2008 - VS2008で拡張領域のタイトルの色を変更するにはどうすればよいですか?

VS2008で拡張リージョンのタイトルの色を変更する方法があるかどうか知りたいのですが。サードパーティのプラグインを使用しても。

誰かがそれを行う方法を知っていますか?

0 投票する
1 に答える
2182 参照

mvvm - MVVM Prism ネストされたリージョンで子リージョンが見つからない

シェルで定義されたネストされた領域を持つメニュー (Telerik RadMenu) があります。私のモジュールでは、モジュール メニューまたはツールバー項目をこれらの領域に登録します。ルート リージョンではすべて正常に動作しますが、メニューのファイル リージョンなどの子リージョンに何かを追加しようとすると、「例外メッセージ: リージョン マネージャーに FileMenuRegion リージョンが含まれていません」というエラーが表示されます。

ただし、このコードを変更すると、言ったように

これに

すべて正常に動作します。以下は私のメニューの XAML で、リージョン名とその構成方法を確認できます。これは当惑し、私を夢中にさせているので、どんな助けも大歓迎です。

メニュー

0 投票する
10 に答える
5154 参照

c# - .NET '#region ディレクティブ' 規則のアイデアはありますか?

コード内で領域を定義できる可能性があることを本当に感謝しています。読みやすさが非常に向上するからです。

とにかく、次のように、すべてのクラスで(すべての地域の事前定義された順序で)同じ規則を誰もが使用できるようにしたいと思います。

  • プライベート フィールド
  • コンストラクター
  • クラス プロパティ
  • イベント ハンドラ
  • 等...

この分割がどのように見えるか (どの領域が意味を持ち、どのような名前を持つべきか)、どの順序で定義する必要があるかについて、提案はありますか?

0 投票する
1 に答える
242 参照

wpf - 複合 WPF で領域を使用するときにカップリングを回避する方法

Microsoft のComposite Application Libraryを使用して設計されたアプリケーションがあります。私のシェルには、個別のモジュールからコンテンツを挿入できるように、いくつかの領域が定義されています。これらの領域が導入する結合を減らす設計パターンを探しています。

私が見たすべての例では、リージョンはインフラストラクチャ プロジェクトの静的クラスの文字列を使用して定義およびアクセスされます。

これにより、インフラストラクチャ プロジェクトの一部がシェルと一致する必要があるため、インフラストラクチャ プロジェクトからシェルへの依存関係が導入されます。定義されていないリージョンにアクセスしようとすると、CAL RegionManager が例外をスローするため、インフラストラクチャ プロジェクトとシェル プロジェクトが同期されていることを確認する必要があります。

シェルの領域を分離して、シェル内でのみ定義されるようにする方法はありますか (インフラストラクチャ プロジェクトに領域名はありません)。

リージョンをオプションにして、シェルがすべて同じリージョンを持っていなくてもシェルを交換できるようにする方法はありますか? (例: あるシェルにはメニューとツールバーの領域があり、別のシェルにはメニューしかありません...モジュールは、ツールバーが利用可能であればツールバーに挿入でき、そうでない場合は失敗することはありません)


更新 - 私のアーキテクチャの詳細

以下のdedratureboyの回答に応えて、システムのセットアップ方法を説明したいと思いました...おそらく、より良いフィードバックがあるでしょう。

私は Infrastructure および Shell プロジェクトを汎用ライブラリとして扱っており、それらを使用するアプリケーションがいくつかあります。インフラストラクチャ プロジェクトは "フレームワーク" コードとリソース (MVVM のもの、リフレクション、アイコンなど) を提供し、シェルは基本的なウィンドウ レイアウト (メニュー、ツールバー、ステータス バー、メイン コンテンツ領域) を備えた汎用ホスト ウィンドウです。アプリケーションはすべて、シェルを共有しているため、共通の外観と動作を共有しています。

私のアプリケーションは、ロードされるモジュールから個々の機能を取得するため、アプリケーションごとにすべてをまとめたブートストラップ プロジェクトがあります (インフラ、シェル、モジュール)。

現在のものとは大きく異なるまったく新しいアプリケーションを開発する必要が生じた場合、インフラストラクチャ プロジェクトは再利用できますが、シェルは再利用できないと思います。そのため、インフラストラクチャ プロジェクトとシェルを切り離すことに興味があります。

0 投票する
3 に答える
523 参照

asp.net - クラス内の名前空間の機能を取得することは可能ですか?

次のコードがあります。

私がやりたいことは、次のようなコードを分離できることです (これは明らかに機能しません)。

Step2_ を一連の関数の前に配置する代わりに、Step2.Execute() を呼び出すことができるような、クラス内の名前空間の機能が必要です。step1、step2などに個別のクラス/モジュールを作成する必要はありません。

クラス内から名前空間機能を実現する方法はありますか?