タグ付けされた質問 「winforms」

WinFormsは、Microsoft .NET FrameworkおよびMonoのGUIクラスライブラリであるWindows Formsに付けられた非公式の名前です。このタグ内の質問は、ターゲットフレームワーク([.net]または[mono])でもタグ付けする必要があり、通常はプログラミング言語タグでタグ付けする必要があります。

11
Windowsフォームアプリケーションのデフォルトアイコンの変更
作業中のアプリケーションのアイコンを変更する必要があります。しかし、単にプロジェクトのプロパティ]タブから他のアイコンをブラウズ- >アプリケーション- >アイコンは、デスクトップに保存されているアイコンを取得されていません。.. それを行う正しい方法は何ですか?


11
WindowsフォームC#アプリケーションで構成ファイルを作成する最も簡単な方法
私は.NETを初めて使用しましたが、それでも構成ファイルの動作についてこだわりませんでした。 Googleで検索するたびにweb.configに関する結果が表示されますが、Windowsフォームアプリケーションを作成しています。 System.Configuration名前空間を使用する必要があることがわかりましたが、ドキュメントは役に立ちません。 構成ファイルがXYZ.xmlであることをどのように定義しますか?または、構成ファイルの「デフォルト」名はありますか?まだうまく聞き取れません。 また、新しいセクションを定義するにはどうすればよいですか?本当にConfigurationSectionから継承するクラスを作成する必要がありますか? 私はこのようないくつかの値を持つ設定ファイルが欲しいです: <MyCustomValue>1</MyCustomValue> <MyCustomPath>C:\Some\Path\Here</MyCustomPath> それを行う簡単な方法はありますか?単純な構成ファイルの読み書き方法を簡単な方法で説明できますか?

30
ビルドエラー:「別のプロセスで使用されているため、プロセスはファイルにアクセスできません」
私はC#webformsアプリを持っています。今日まで、それは水泳だけで動作していました。 さて、今日、突然、アプリを実行しようとするたびに、ファイルロックエラーが発生します。 ファイル「obj \ Debug \ MyProject.exe」を「bin \ Debug \ MyProject.exe」にコピーできません。"bin \ Debug \ MyProject.exe"ファイルは別のプロセスによって使用されているため、プロセスはファイルにアクセスできません。 エラーをグーグルすることは、明白なことを超えて何も思い付きません、すなわち、VSはファイルがロックされていると考えます。そして、ファイルをロックするのは間違いなく Visual Studio自体です。VSを閉じて再び開くと、プロジェクトは初めて実行されるためです。もう一度実行しようとすると、ファイルロックエラーが発生します。 アプリを実行するたびにVSを閉じて再度開くことは、実行可能な回避策ではありません。ファイルをロックしているものを見つけて、ロックされないようにするにはどうすればよいですか? 編集:もう1つの興味深い発見:アプリを実行する必要すらありません。一度コンパイルするだけでファイルがロックされます。2回続けてコンパイルすることはできません! この問題は、私のソリューションの1つのプロジェクトに固有です。他のすべてのプロジェクトは正常に動作し、好きなだけ何度でも実行できます。それ自体がロックされるのは、この1つのプロジェクトだけです。

7
C#Form.CloseとForm.Dispose
私はC#を初めて使用し、以前の投稿を調べようとしましたが、良い答えが見つかりませんでした。 単一のフォームを持つC#Windowsフォームアプリケーションでは、Form.Close()より良いまたはForm.Dispose()? MSDNによると、オブジェクト内のすべてのリソースが閉じられ、Closeが呼び出されるとフォームが破棄されます。それにもかかわらず、私はオンラインでクローズではなくディスポーズに続くいくつかの例に出くわしました。 一方が他方よりも有利ですか?どのシナリオでどちらを優先する必要がありますか?
88 c#  winforms 


8
エラーをどのように診断する必要がありますかSEHException-外部コンポーネントが例外をスローしました
ユーザーが次のようなエラーを報告するたびに System.Runtime.InteropServices.SEHException-外部コンポーネントが例外をスローしましたか? プログラマーとして私が原因を特定するためにできることはありますか? シナリオ:1人のユーザー(私の会社が作成したプログラムを使用)がこのエラーを報告しました。これは1回限りのエラーである場合とそうでない場合があります。彼らは先月、コンピューターが2回「動作を停止」したと述べた。私は経験から、この説明を文字通りに解釈しないことを学びました。これは通常、コンピューターに関連する誰かが期待どおりに機能していないことを意味します。彼らは私にそれ以上の詳細を与えることができず、私は記録されたエラーを見つけることができませんでした。したがって、このエラーである場合とそうでない場合があります。 スタックトレースから、実際のエラーは、相互運用コードを直接呼び出さないクラスを構築するときでしたが、オブジェクトがDevExpressグリッドにデータバインドされたリストの一部である可能性があるという事実によっておそらく複雑になりました。 エラーは、通常はプログラムを終了する未処理の例外ルーチンによって「キャッチ」されましたが、無視して続行するオプションがあります。エラーを無視することを選択した場合、プログラムは引き続き機能しますが、このルーチンが次に実行されたときにエラーが再発しました。ただし、アプリケーションを閉じて再起動した後、再び発生することはありませんでした。 問題のコンピュータはストレスがたまっていないようでした。Vista Businessを実行しており、2 GBのメモリがあり、タスクマネージャーによると、アプリケーションではその約半分しか使用していませんでした。 関連する場合と関連しない場合がある情報がもう1つあります。同じプログラムの別のセクションでは、ネイティブdllのドットネットラッパーであるサードパーティコンポーネントを使用していますが、このコンポーネントには既知の問題があり、非常にまれに 保護されたメモリの読み取りまたは書き込みを試みました。これは多くの場合、他のメモリが破損していることを示しています コンポーネントメーカーによると、これは社内で使用しているコンポーネントの最新バージョンで修正されているとのことですが、まだお客様に提供されていません。 エラーの影響が少ないこと(作業が失われることはなく、プログラムを再起動して元の場所に戻るのに最大で1分しかかからない)、および顧客がまもなく新しいバージョンを取得することを考えると(3番目に更新された-パーティーコンポーネント)、私は明らかに私の指を交差させることができ、エラーが二度と起こらないことを願っています。 しかし、私にできることは他にありますか?

4
WinFormsアプリケーションですべての「未処理」例外をキャッチするものを作成するにはどうすればよいですか?
今まで、私はちょうど周りtry / catchブロックを置くApplication.RunにProgram.csプログラムへのエントリポイント。これにより、デバッグモードですべての例外が十分にキャッチされますが、デバッグモードなしでプログラムを実行すると、例外が処理されなくなります。未処理の例外ボックスが表示されます。 私はこれが起こらないようにしたい。非デバッグモードで実行しているときにすべての例外をキャッチしたい。プログラムには複数のスレッドがあり、それらからのすべての例外が同じハンドラーによってキャッチされることが望ましい。DBに例外を記録したい。誰かがこれを行う方法について何かアドバイスがありますか?

8
プログラムで行を追加するWinformsTableLayoutPanel
私はしばらくこれと戦ってきましたが、他の多くの人々もTableLayoutPanel(.net 2.0 Winforms)で苦労していることがわかりました。 問題 10列が定義されている「空白」のtablelayoutpanelを取得し、実行時にプログラムでコントロールの行を追加しようとしています(つまり、セルごとに1つのコントロール)。 と同じくらい簡単なはずだと思ったかもしれません myTableLayoutPanel.Controls.Add(myControl, 0 /* Column Index */, 0 /* Row index */); しかし、それは(私にとっては)行を追加しません。だから多分行スタイルで追加する myTableLayoutPanel.RowStyles.Clear(); myTableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.Absolute, 30F)); しかし、それも機能しません。調べてみると、myTableLayoutPanel.RowCount使用法は設計時から実行時に変化するためmyTableLayoutPanel.RowCount++;、RowStyleエントリを追加する前でも後でも、実際には別の行が追加されません。 私が遭遇している別の関連する問題は、コントロールがディスプレイに追加されることですが、それらはすべてTableLayoutPanelのポイント0,0でレンダリングされるだけであり、さらに、本来あるべきセル境界内にあるように制約されることさえありません。内に表示されます(つまり、Dock = DockStyle.Fillを使用すると、まだ大きすぎたり小さすぎたりします)。 実行時に行とコントロールを追加する実用的な例はありますか?

11
Windowsアプリケーションでコンソールを表示しますか?
Windowsアプリケーションでコンソールを表示する方法はありますか? 私はこのようなことをしたい: static class Program { [STAThread] static void Main(string[] args) { bool consoleMode = Boolean.Parse(args[0]); if (consoleMode) { Console.WriteLine("consolemode started"); // ... } else { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } } }
85 c#  winforms  console 

9
Console.WriteLineが出力ウィンドウに表示されない
Console.WriteLineテストのためにいくつかの呼び出しを入れましたが、それらは出力ボックスに表示されませんか? public static ArrayList myDeliveries = new ArrayList(); public mainForm(){ InitializeComponent(); } private void mainForm_Load(object sender, EventArgs e){ if (!File.Exists("../../MealDeliveries.txt")){ MessageBox.Show("File not found!"); return; } using (StreamReader sr = new StreamReader("../../MealDeliveries.txt")){ //first line is delivery name string strDeliveryName = sr.ReadLine(); Console.WriteLine("Test content"); while (strDeliveryName != null){ //other lines Delivery d …
85 c#  .net  winforms 

4
ContextMenuStripが使用されたコントロールを決定します
ContextMenuStripいくつかの異なるリストボックスに割り当てられているがあります。ContextMenuStripがクリックされたときに何ListBoxが使用されたかを把握しようとしています。以下のコードを最初に試しましたが、機能しません。sender正しい値を持っているが、私はそれを割り当てるしようとすると、menuSubmittedそれがnullです。 private void MenuViewDetails_Click(object sender, EventArgs e) { ContextMenu menuSubmitted = sender as ContextMenu; if (menuSubmitted != null) { Control sourceControl = menuSubmitted.SourceControl; } } どんな助けでも素晴らしいでしょう。ありがとう。 以下の支援を使用して、私はそれを理解しました: private void MenuViewDetails_Click(object sender, EventArgs e) { ToolStripMenuItem menuItem = sender as ToolStripMenuItem; if (menuItem != null) { ContextMenuStrip calendarMenu = menuItem.Owner as …

7
WPFアプリとWinformfor Businessアプリの利点は何ですか?[閉まっている]
現在のところ、この質問は私たちのQ&A形式には適していません。回答は事実、参考資料、または専門知識によって裏付けられることを期待していますが、この質問は、討論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善し、場合によっては再開できると思われる場合は、ヘルプセンターにアクセスしてガイダンスを入手してください。 8年前に閉鎖されました。 私はasp.netとwinformの開発を知っています。私は、新しいテクノロジーという理由だけで新しいテクノロジーに飛び込むタイプの開発者ではありません。生産性の向上など、追加のメリットを得る必要があります。 純粋なビジネスアプリのWinformsに対するWPFの利点は何ですか?WPFが提供する追加の目の保養、アニメーション、グラデーション、画像表示効果などには興味がありません。ビジネスアプリは、データ入力、データレポート、および場合によってはいくつかのグラフや写真の静的表示用です。 WPFはこれらのアプリでどのように役立ちますか?より豊富なデータバインディング?WinFormは成熟した実績のあるテクノロジであり、Visual Studioですべてを実行できるのに対し、WPF(VS&Blendファミリ)の複数のIDEで実行できるという事実が気に入っています。さらに、WPFには、対応するWinform(DataGridView..etc)ほど豊富なデータバインディングコントロールがないと思います。AFAIK、マイクロソフトは引き続きWinformsを長年サポートします。 私のような人に切り替えるように説得してみてください。
84 wpf  winforms 


19
あるフォームから別のフォームに値を送信する
2つのフォーム(c#)間で値を渡したい。どうすればいいですか? Form1とForm2の2つのフォームがあります。 Form1にはボタンが1つ含まれています。そのボタンをクリックすると、Form2が開き、Form1が非アクティブモード(つまり選択不可)になっているはずです。 Form2には、1つのテキストボックスと1つの送信ボタンが含まれています。Form2のテキストボックスにメッセージを入力して送信ボタンをクリックすると、Form2が閉じ、Form1が送信された値で強調表示されます。 どうすればいいですか?誰かが簡単な例でこれを行うのを手伝ってくれますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.