問題タブ [code-behind]

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

asp.net-mvc - ASP.NET MVC ビュー - コード ビハインドを使用できますか

私は MVC を初めて使用し、すべてのスクリプト タグが混在しているため、ビュー ページがかなり見苦しく見えることに気付きました。コード ビハインド ビューのメソッドで HTML を生成し、メソッドの文字列結果をスクリプトの 1 ビットとして挿入することは理にかなっていますか?

例えば:<div><%= GenerateTonsOfHTMLFromSomeIEnumerable() %></div>

これは MVC の哲学に反していますか? パフォーマンスなど、他の理由で愚かですか?メリットはありますか?

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

c# - C# データ バインディングで WPF が更新されない

XAML ではなく、C# コード ビハインドでデータ バインディングを実行しようとしています。Expression Blend 2 で作成した CLR オブジェクトへの XAML バインディングは正常に機能します。私の C# 実装は、アプリケーションが開始されたときにのみ更新され、その後 CLR に変更を加えても、ラベルの内容は更新されません。

これが実際の XAML バインディングです。最初に、ObjectDataProvider が Window.Resources で作成されます。

ラベル コンテンツ バインディング:

よく働く。ただし、これを C# でセットアップして、XAML (つまり、新しいスキン) を個別に変更できるようにしたいと考えています。次のようにC#を一度だけ作業しました:

これは、InitializeComponent(); の後の MainWindow 内にあります。

これが起動時にのみ機能する理由は何ですか?

0 投票する
8 に答える
24753 参照

.net - ページのコード ビハインドからユーザー コントロールの関数を呼び出す

これはかなり単純化されていますが、次のようになります。

単一の *.ascx ファイルのみで構成されるユーザー コントロールがあります。コントロールにはコード ビハインドはありません。これは、次のようないくつかの機能を備えた単なるスクリプトです。

それがファイル全体です。次のようなマークアップを使用して、このコントロールを aspx ページに正常に追加できます。

ここで、次のように、ページのコード ビハインドから MyFunction を呼び出します。

残念ながら、それはできません。'MyFunction' is not a member of 'System.Web.UI.UserControl'.代わりに、" "の影響でコンパイル エラーが発生します。

私もこれを試しました:

そして、コンパイラは私に「Type 'MyControlType' is not defined.」と言います

私はこれでたくさん遊んできましたが、うまくいきません。他の回避策と同様に、MyControl1 をより正確な型にキャストする試みはすべて失敗しました。問題は、コード ビハインドのない ascx ファイルをアセンブリにコンパイルできないが、コード ビハインドをアセンブリにコンパイルする必要があるため、コンパイラがコントロールの型について混乱することだと思われます。

その関数を呼び出すにはどうすればよいですか?

[編集]
だから、ユーザー コントロールのコード ビハインドを追加する必要があります。とにかくやりたかったことです。ただし、これを必要とせずにこれを行う方法を知りたいです。

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

asp.net - データベースからテーブルのセルの色を設定する

私はこれを考えすぎています。データベーステーブルに色を保存していて、テーブル内の特定のセルの背景をそれらの色に設定したいと思います。言い換えると:

もともと私は各コンテンツを囲むパネルを持っていて、その背景色をコードビハインドで設定しました。これは、さまざまなサイズのパネルができてレイアウトが崩れるまでは問題なく機能しました。データベースから<td>要素に色の値をフィードする最も簡単な方法は何ですか?色はユーザーが構成できるため、CSSファイルで事前に定義することはできません。

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

c# - コードビハインドを使用してビットマップ変数から画像を表示する

日付 (カレンダー クリック イベント) またはキーワード検索のいずれかに基づいてデータベースから画像を表示するだけの非常に単純な Web アプリを作成したいのですが、画像を取得することは問題ありませんが、結果の画像を表示する方法がわかりません。できれば、検索条件を取得するために使用したのと同じページのカレンダーとテキストボックスに隣接して、テーブルまたはグリッドなどに画像を表示したいと思います

コードビハインド ビットマップ変数からページに画像をストリーミングするにはどうすればよいですか?

編集:データベースはクラウドデータベースであるため、データバインディングはありません。

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

visual-studio - Visual Studio 2005 がコード ビハインド ファイルの追加を停止した

今朝、新しい ASPX ページをプロジェクトに追加しようとしたとき、Visual Studio は、関連付けられている .CS ファイルが不要であると判断しました。Web コントロールを追加しようとしても、同じ結果が生成されました: .cs のない .ascx ファイル。これまでに 2 つの質問があります。

  1. 週末にシステムに変更が加えられなかったことを考えると、この原因は何でしょうか?
  2. 現在、VS を再インストールすることが唯一の選択肢ですか?

Windows XP SP3 で Visual Studio 2005 SP1 を実行しています。

ありがとう!

編集:ありがとうございました。チェックボックス DID はある時点でオフになり、単に表示されませんでした。月曜日にこれを非難します...

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

.net - VS 2008 Web サイトから Web アプリケーション プロジェクトへの変換

VS 2008 Web サイトを Web アプリケーション プロジェクトに変換中です。MSDNサイトの指示に従いましたが、奇妙なエラーが大量に発生しています。約1週間前に別のプロジェクトでこれを行ったが、問題はなかったことに言及する必要があります。私が得ているエラーはこれです:

タイプ「XXX」には、「XXX」の定義がすでに含まれています。

このエラーは、コード ビハインド内のすべてのプライベート メンバーまたはメソッドで発生します。私のサイトには現在、このような 218 のエラーがあります。

考え?

編集:同様の問題に関するこのASP.NETフォーラムの投稿を見たことを追加すると思いました。それを修正する方法は、すべてのコードビハインドを別のクラスライブラリにプッシュすることでした。これでうまくいくと確信していますが、どこかで単純な設定にすぎないのではないかと思うと、かなりの作業になります。

0 投票する
5 に答える
5475 参照

asp.net-mvc - ASP.NET MVC RC - 分離コードを使用した MVC ユーザー コントロールの作成

Release Candidate で MVC ユーザー コントロールを作成しようとしていますが、コード ビハインド ファイルを使用して作成する方法がわかりません。同じことが MVC ビュー ページにも当てはまります。

ベータ版でビューを作成すると、分離コードが生成されます...何か不足していますか?

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

.net - デフォルトで作成される RC1 の ASP.NET-MVC ビューの「分離コード」ファイルを取得する方法

RC1 では、ビューを作成するためのテンプレートの動作が変更されました。

リリース候補に関する Scott Gu の投稿で説明されているように、新しく作成された aspx ビューには、既定でコード ビハインド ファイルがなくなりました。

フィードバックに基づいて、デフォルトでコード ビハインド ファイルを持たないようにビュー テンプレートを変更しました。この変更は、MVC アプリケーションのビューの目的を強化するのに役立ちます (純粋にレンダリングに関するものであり、レンダリング以外の関連コードを含まないことを目的としています)。ほとんどの人にとって、プロジェクト内の未使用のファイルは削除されます。

RC ビルドでは、ジェネリックを使用する基本クラスからビュー テンプレートを継承するための C# および VB 構文のサポートが追加されました。たとえば、以下では、Edit.aspx ビュー テンプレートでこれを使用しています。このテンプレートの「継承」属性は、ViewPage 型から派生しています。

コードビハインドにビュー固有のコードを記述して、ビューを出力できることが本当に気に入っています。特に、ページのいくつかの部分でロジックを繰り返しており、部分的なビューを作成することを正当化できない場合は特にそうです。

私の実際の質問:スコットはデフォルトで言った- これは、その動作を変更できることを意味しますが、どこにあるのかわかりません。出来ますか?コードビハインド ファイルを手動で作成し、変更するのは面倒です。

これにより、追加の問題も発生します。

  • モデルの名前をリファクタリングすると、ビューのディレクティブが更新されません。これは世界の終わりではありませんが、完全に強く型付けされていることの明確な利点の 1 つです。

補遺:なぜコード ビハインドが必要なのか疑問に思っている方のために、考えられる理由のいくつかを以下に示します。これは、私が考えたほぼすべての累積的なリストです。言うまでもなく (そうするべきです)、既にモデルに含まれているデータ以外のデータにアクセスしてはなりません。LINQ はモデル データの単純な操作には問題ありませんが、LINQ to SQL はそうではありません。MVC は、これを既に知っているはずの人のためのものです。それが私が気に入っている理由です。賢い人によって賢い人のために作られています。

  • レガシ ASP.NET コントロールのデータバインディング - 代替手段がない場合、または一時的な解決策が必要な場合。
  • ネストされた、または階層化された HTML を作成するために再帰を必要とするロジックを表示します。
  • 一時変数を使用するロジックを表示します。タグスープでローカル変数を定義することを拒否します! 少なくともビュークラスのプロパティとしてそれらを望んでいます。
  • 1 つのビューまたはモデルのみに固有で、HtmlHelper に属さないロジック。補足として、HtmlHelper が「モデル」クラスについて知る必要はないと思います。モデル内で定義されたクラス ( など) を知っていれば問題ありIEnumerable<Product>ませんが、たとえば、ProductModel.
  • HtmlHelper メソッドは、入力時にすべてのビューから表示されるようになりHtml+dot、このリストを可能な限り最小限に抑えたいと思っています。
  • オブジェクト指向の方法で HTML を生成するために、その名前空間で および他のクラスを使用するコードを記述したい場合HtmlGenericControl(または、移植したい既存のコードがある場合) はどうでしょうか。
  • 将来、別のビュー エンジンを使用することを計画している場合はどうなりますか。後で再利用しやすくするために、タグ スープとは別にいくつかのロジックを残しておきたいと思うかもしれません。
  • モデル クラスの名前を変更し、view.aspx に移動してクラス名を変更することなく、ビューを自動的にリファクタリングできるようにしたい場合はどうすればよいでしょうか。
  • 「タグスープ」を台無しにしないと信じていない HTML デザイナーと調整していて、.aspx.cs ファイルに非常に基本的なループを超えて何かを書きたいとしたらどうなるでしょうか。

「コードビハインド」は、「ビューの部分クラスの残りの半分」とは対照的に、伝統的に「イベント処理コード」を意味すると解釈されてきたため、人々は「コードビハインド」に対して偏見を持っていると思います。

ビューの分離コードは問題ありません。

フォルダ構造が少し乱雑になることに異論はありませんが、それが+アイコンの目的です。「ビューの追加」を使用してコードビハインドでビューを作成する機能が欲しいだけです。

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

asp.net - .net 開発動的に作成されたコントロールには、独自のメソッドが必要です

.net でプログラミングを行っているほぼすべての人が、ボタンの動的な作成に関して同様の問題に遭遇したことがあると確信しています。

シナリオ例..

グリッドビューがあり、グリッドビュー フィールドの 1 つにボタンがあります。通常、Visual Studio を使用する .net では、ボタンのクリック イベントを簡単に取得できますが、これらのボタンは動的に作成されるため、簡単には取得できません。ボタンのクリックイベントを取得するための最良の方法は何かに興味がありました。

dopostback を使用して可能であることは理解しています。ただし、dopostback メソッドは使用するのにあまり適していないことも読んだので、それを実装する方法も試したこともありません。何故ですか?