問題タブ [visual-inheritance]

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

c# - Silverlightカスタムプロパティの継承

カスタムDependencyPropertyを使用して、UserControlから継承するクラスがあります。標準のボタンを内部に配置し(必ずしも直接の子である必要はありません)、次のようにボタンのカスタムDPの値を取得したいと思います。

これはビジュアルツリー内のほとんどのプロパティの継承ですが、xは「hello」ではなくnullです。

このようなプロパティの継承はSilverlightで可能ですか?
(いいえ、userControlを独自のDataContextに配置したくありません。ViewModelにDCが必要です。MyDependencyはビューのプロパティであり、ビューモデルではありません)

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

c# - ビジュアル継承の問題、Visual Studio 2008 C#

Visual Studio 2008 C# でこの問題が発生しました。基本フォームと、それを継承する多数の Windows フォームがあります。(はい、継承しようとする前に基本フォームをコンパイルしたと思います。)

派生フォームはエラーなくスムーズにコンパイルされますが、基本フォームから継承したものしか表示されません。つまり、すべての派生フォームは、設計時には異なっていても、実行時には外観も動作も基本フォームとまったく同じです。つまり、基本フォームには見られない多くのコントロールがあります。

以前にこの問題が発生したことがありますか?どのように解決しましたか?

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

c# - WinFormsToolStripはビジュアル継承では使用できません

FormChildがFormParentを継承しているとしましょう。親では、上部にツールチップがあります。子フォームで要素を追加したいのですが、修飾子protectedに設定したにもかかわらず、コントロールは常にロックされています。

インターネットをチェックしましたが、これはよく知られたバグのようです。しかし、誰かが回避策か何かを知っていますか?

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

c# - 視覚的な継承の問題

基本ユーザー コントロール BaseViewControl を作成しました。これには dataGridView と bindingSource があります。どちらも保護されたアクセス修飾子を持っています。dataViewGrids dataSource は基本フォーム bindingSource を指します。

次に、InheritedUserControl、ApplicationUserView を作成し、プロンプトが表示されたら、それを UI アセンブリに向けました。同じアセンブリ内の他のarb UserControlを継承したため、BaseViewControlを継承するように手動で変更しました。

ApplicationUserView の bindingSource で、dataSource プロパティを ApplicationUser ドメイン オブジェクトに設定しました。次に、dataGridView は、予想どおり、DesignView の ApplicationUser ドメイン クラスのプロパティを使用してその列を設定しました。

ここで、ビューが IList<ApplicationUser> を受け取るコントローラー オブジェクトからの非同期コールバックで、bindingSource.DataSource = applicationUserList を設定します。

コールバックが呼び出され、applicationUserList にアイテムが含まれていることを確認しましたが、実行時にグリッドに行が表示されません。それはすべての視覚的な継承の側面と関係があると思います。

以前に継承されたアイテムのプロパティを変更しようとするとすぐに、VSが継承されたフォームから継承したフォームにアイテムのコピーを作成するのを見たことがありますが、これは同様の効果がありますが、そうではありません。

私が間違っていることはありますか?

ありがとう、HS

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

interface-builder - UIViewからIBのビュー内のコントロールへの透明性の継承を「オフ」にする方法は?

アルファが 0.1 に設定されている Interface builder (Xcode 4.1) に UIView があります。そのビューの上に、いくつかの UIbutton オブジェクトがあります。これらのボタンはそのビューの子であり、単純にその上に配置されているわけではありません。これは、オブジェクト エクスプローラーではっきりとわかります。問題は、これらのボタンが親ビューからアルファ設定を継承することです。このアルファ継承をオフにするにはどうすればよいですか?

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

.net - VS2010 での WinForms のビジュアル継承の問題

問題のプロジェクトの背景を簡単に説明します。それは C# .Net 4、スマート クライアント ファクトリを備えた WinForms であり、残念ながら多くの視覚的継承です。

これは、私が取り組んでいるチームが経験している、かなり断続的な問題の簡単な概要です。

誰かがクライアント モジュール プロジェクトの 1 つを開いてビューの 1 つで作業を開始し、ビューをダブルクリックしてデザイナーを開くと、Visual Studio は次のような設計時エラーを表示します。

もう後戻りはできません。次の回避策を実行せずにここから再構築すると、エラーは引き続き発生します。私たちが見つけた唯一の回避策は、クライアント ソリューションを消去し、Visual Studio を閉じて (それを行う必要あります)、Visual Studio を再度開いて、ソリューションを再構築することです。次回ビューを開こうとすると、機能します。しかし、エラーは再び発生します - X量の再構築の後であるようです (おそらく、ソリューションの構築中にデザイナーでビューが開いている間だけですか?)

この問題を実際に掘り下げるために時間を取った人は誰もいませんし、現時点では誰も時間がありません! それで、何が起こっているのかについて誰かが考えを持っているのではないかと思っていました(少し長いショットです)?それとも、これを調べる時間が少し取れたら、どこから掘り始めるべきかのヒントになるでしょうか?

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

c# - 基本フォームから派生フォームでメソッドを呼び出す

複数のフォームで一連のボタンを再利用できるように、Visual Inheritance を試してみました。

基本的に私が達成しようとしているのは、ボタンが異なるフォーム間で同じ視覚的動作を持つようにしたいということですが、継承しているフォームに応じて異なるアクションを実行する必要があります。

次のボタンがあるとしますFormButtonBar

新しい | 編集 | 検索 | キャンセル | 近い

それらを無効にするか、現在の状況に応じてテキストとアイコンを変更する必要があります(私は を使用してそれを行います.Tag)。これらは表示される代替オプションです

保存 | 保存 | 削除 | キャンセル | 近い

これを継承するフォームで想定どおりに機能するようになりましたが、明らかに、これらのボタンは、使用しているフォームに応じて異なるコンテンツを処理する必要があります。

私が考えたのは、saveNewItem() saveChangedItem() removeItem()すべてのフォーム継承FormButtonBarが持つべきメソッドを呼び出す方法でした。

しかし、どうすればそれらを呼び出すことができFormButtonBarますか?

例えば:

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

c# - デザイン モードで継承されたコントロール マークを非表示にする方法

ここに画像の説明を入力

スクリーンショットでは、次の 2 つのフォームを確認できます。

  1. コントロールを継承したデザイン モードのコントロール。このコントロールは特別な記号でマークされています。

  2. この記号も含む印刷プレビュー フォーム。

質問:

フォームまたは少なくとも印刷プレビューでこのシンボルを削除する (または非表示にする) 方法は?

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

vb.net - 派生フォーム間でコードを共有する

私のプロジェクトで視覚的な継承を実装しました。ベース フォームから 2 つの派生フォームがあります。また、1 つの基本クラスから 2 つの通常の派生クラスがあります。各派生フォームは、適切なクラスのオブジェクトを開始する派生クラスの 1 つを扱います。たとえば、"letter" と呼ばれる基本形式と 2 つの派生形式 "A" および "B" があり、基本クラス "base" と 2 つの派生クラス "a" および "b" があります。「a」からのオブジェクトは、「A」を「呼び出す」ときにインスタンス化され、「b」と「B」についても同じルールです。

フォーム「A」で行うことは、いくつかのテキストボックスを使用してクラス「a」のオブジェクトのプロパティを入力し、フォーム「B」の場合はクラス「b」のオブジェクトのプロパティを入力することです。

私が期待していたのは、プログラムの特定のポイント (この場合は別のフォーム) から各フォーム (「A」または「B」) を「呼び出し」、インスタンス化したオブジェクトで作業することでした。正しい形のイベント。

問題は、フォーム「A」と「B」からのイベントのコードが 95% の確率で同じであることです。私は最初、そのすべてを基本フォーム (「文字」) に配置して、そこで派生オブジェクトを操作できると考えましたが、できません。これは基本的に、派生フォームでインスタンス化したオブジェクトを基本フォームからのイベントで使用できないために発生します。たとえば、「A」で作成したクラス「a」のオブジェクトを「letter」のイベントで操作することはできませんが、「letter」で作成したクラス「a」のオブジェクトを操作することはできます」 「A」に関するイベントを含む「レター」。熟考した後、なぜこれが起こるのかがわかりました。

私の解決策は、すべてのイベント コードをフォーム "A" と "B" に配置することでした。これはうまく機能します。

問題は、フォーム「A」と「B」からの私のイベントが、95% の確率で類似していることです。私はかなり厄介で不必要なことをしていると思います。だから、私の質問は、イベントを一度だけ書き込めるように作業を最適化するにはどうすればよいですか? 笑、長い投稿と短い質問。助けていただければ幸いです。

ありがとう、

リカルド S.

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

c# - 継承されたフォームのコントロールはロックされています。元に戻すことはできますか?

設定:

Form他のフォームを継承するためのベースとして使用したい を作成しました。この基本フォームは一種の「テンプレート」として機能しますが、構造に関連する多くの機能と、提供されるすべてのコントロールの相互関係も提供します。

以下のイメージの入門書... 上部の情報色のバーは、 から継承されたカスタム コントロールToolStripです。一番下のストリップは、再び から継承された別のカスタムToolStripです。左の白いブロックが でTreeView、右のブロックが ですTabControl(すべて削除しTabPagesました...これらは継承されたフォームに追加する予定です)。

デザイナーの基本フォームのイメージ:

ここに画像の説明を入力

デザイナーで継承されたフォームの画像:

ここに画像の説明を入力

明らかに、唯一の違いは、継承されたフォームを開くと、各コントロールの上に小さなボックス アイコンが表示され、それらをクリックすると、編集できないことを示す南京錠が表示されることです。

問題点:

継承されたフォームのすべてのコントロールがロックされます。私は視覚的継承の問題を調査しましたが、私が知る限り、明示的にサポートしていないコントロールは使用していません。このリンクがあることを示唆しています。このQ&Aで、Hans はこれらのコントロールの修飾子を変更することを提案しています。Public実際、 と の両方を試しましProtectedたが、すべて良い結果にはなりませんでした。

私は困惑しています。