問題タブ [initializecomponent]

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 投票する
0 に答える
60 参照

vb.net - StackOverflowException - 再帰なし

StackOverflowExceptionへの既存のフォーラム参照は有益ではありますが、私が遭遇している現在のシナリオに正確には関連していないため、この質問を投稿しています。

最近 MSI を作成し、会社の Citrix サーバー ファームにインストールした雇用主向けのアプリケーションを開発しています。Citrix Workspace 経由でアプリケーションを起動すると、正常に起動しました。しかし、特定のボタンをクリックしてアプリケーションの Windows フォームの 1 つをインスタンス化すると、StackOverflowExceptionが発生しました。私の開発マシンではStackOverFlowExceptionがスローされていなかったので、これは驚きでした。私はこのアプリケーションを 1 年以上開発してきました。

当社の Citrix サーバー ファームには 3 台のサーバーがあります。StackOverFlowExceptionはそのうちの2 つで発生しますが、3 番目では発生しません。各サーバーにログインし、コンパイルされたアプリケーションを直接実行して、これを確認しました。

エラーのデバッグは Citrix サーバーではオプションではないため、アプリケーション コードにダイアログ ウィンドウを追加し、修正した実行可能ファイルを作成して、問題の Citrix サーバーで使用しました。

そのアプローチを使用して、例外がスローされたステートメントを特定することができました。フォームのNewコンストラクターが呼び出された時点でスローされました。

新しいコンストラクタ - 矢印

そこで、コンストラクタのコードを見てみました。コードにさらにいくつかのダイアログ ボックスを配置してアプリケーションを再実行すると、 InitializeComponentの呼び出し中に例外が発生したことがわかりました。

新しいコンストラクター - InitializeComponent 呼び出し

問題の Windows フォームは、いくつかの TabControls、TreeViews、および複数の SplitContainers (ネストされているものもあります) を含む多数のコントロールを備えた非常に大きなフォームです。

当然のことながら、InitializeComponent は非常に大きなルーチンです。このスレッドに投稿するには大きすぎます。そうでなければ、私はそうしたでしょう。

NewコンストラクターまたはInitializeComponent内に再帰が見られません。さらに、ここで困惑しているのは、SystemStackOverFlowExceptionが 3 台のサーバーのうち 2 台で発生し、3 台​​目のサーバーでは発生していない理由です。

誰かが何かアイデアを持っているなら、私はそれらを聞きたい. もちろん、どんな提案や洞察も大歓迎です。

私の開発マシンは、Windows 10 で VS2017 (.Net Framework 4.8.1) を使用しています。

サーバー ファーム内の 3 台の Citrix サーバーはすべて Windows 2008 Server R2 上にあります。それらはすべて .NET Frameworks 4.8.1 がインストールされています。

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

c# - すべての xaml.cs クラス (Xamarin Forms) で、エラーを取得する:「名前 InitializeComponent は現在のコンテキストに存在しません」

そのため、突然、「現在のコンテキストに InitializeComponent という名前が存在しません」という一般的なエラーが、すべてのソリューションのすべての xaml.cs クラスに表示されました。この問題に対して複数の一般的なソリューションを試しましたが、どれも機能していないようです。

Content ビューを継承する xaml.cs:

コンテンツ ページから継承する xaml.cs:

これらは私が試した一般的な解決策です:

  1. xaml の buildActions が EmbeddedResource に設定されていることを確認します。2) xaml と xaml.cs の名前空間が同じであることを確認します。
  2. xaml で、カスタム ツール: MSBuild:UpdateDesignTimeXaml を確認します。
0 投票する
1 に答える
88 参照

xaml - Xamarin フォームのタブ付きページ タブの初期化

Xamarin で 3 つのタブ (Tab1= "Home" 、Tab2= "Chat" 、Tab3="Menu" ) で構成されるタブ付きページを開発しています。

アプリが起動すると ( ) 、最初にすべてのタブが一緒にMainPage = new TabbedPage()初期化されます ( )。InitializeComponent();

私の質問は、タブが押されるたびに各コンポーネントを単独で初期化する方法があるかどうかということです?