TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
【COBOLから】バッチ処理【Javaまで】
学ぶ言語は「広く浅く」か「狭く深く」のどっちか
Java Web Application Framework総合 ver2
【質問】C++でソフト開発したい!【初心者】
【.NET】F#について語れ2【OCAML】
【糞.NET】裏切り者には死を【アンチゲイツ】
C言語なら俺に聞け 154
Android Studio Part3
Excel VBA 質問スレ Part54
わんくま死亡か?

WPF(.NET4.x, .NET Core) GUIプログラミング Part23


1 :2019/05/16 〜 最終レス :2019/10/31
Windows Presentation Frameworkについて語るスレ。

前スレ
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part22
https://mevius.2ch.sc/test/read.cgi/tech/1513175747/

関連スレ
Windows 10 UWPアプリ開発 Part 2
http://mevius.2ch.sc/test/read.cgi/tech/1499658092/

コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
http://ideone.com/

2 :
2

3 :
スレタイXAMLはあったほうがよかったんじゃ?

4 :
UWPは別のスレがあるな

5 :
前スレから
https://devblogs.microsoft.com/dotnet/introducing-net-5/

6 :
WPFにx:bind来てくれないのかいぃぃ

7 :
ゲームエンジン作れますか?

8 :
openfiledialogとsystem.diagnostics.process.startの違いはなんでしょうか
openfiledialogのほうがエクスプローラが開かなかったですが
実現したいのは、フォルダを開いてファイルを選択するというものです

var dialog = new OpenFileDialog();
dialog.InitialDirectory = @"C:";

System.Diagnostics.Process.Start("explorer.exe",@"c:");

9 :
openfiledialogはファイルを開くためのものですね
勘違いすてまし

10 :
wpfでフォルダのファイルを、リストビューなどで表示するには何を使用するんでしょうか

11 :
リストビューで表示するんなら使用するのはリストビューでしょw

12 :
https://dobon.net/vb/dotnet/file/getfiles.html
wpfでaddrangeが出てこないのですが、なぜでしょうか
addしか出てきません
addrangeはSystem.Collections.Generic;に含まれるそうですが、これはきちんと記述しています


>>11
表示するコントロールはそうなんですが、一覧を取得する方法を調べてました

13 :
>>12
Formsのほうのサンプルじゃないの?

14 :
>>13
wpfじゃないんですかね
だとしたら何を使うんでしょうか

マイクロソフトのリファレンスはC#用とwpf用わかれてるわけではないんですよね?

15 :
for使うことになってるんすかね?

16 :
this.ListBox1.ItemsSource = Directory.EnumerateFiles( @"C:\Windows" );

17 :
もしくは
foreach ( var file in Directory.EnumerateFiles( @"C:\Windows" ) )
{
this.ListBox.Items.Add( file );
}

18 :
>>14
リファレンスは分かれてるというか、違う。名前空間が。
datagrid にしても、forms で使用されているコントロールとwpfで使用されている物とは違う。
webにあるサンプルなど、どちらのコードかってのは、明記されてない限り読み込まないとわからない

19 :
for (int i = 0;i< files.Length;i++) {
listbox_right.Items.Add(files[i]);

}

>>16,17
これでいけました
ありがとうございます
addrangeはないみたいなので、ループしないと駄目なんですね

>>18
名前空間で判断するしかない感じですか
formと共通してるものもあれば、違うものもあるって感じで、ごっちゃになってて少し分かりづらいですね

20 :
>>19
>addrangeはないみたいなので、ループしないと駄目なんですね

違うんじゃないかな。あなたが、>>16の手段使わずに、>>17の手段つかった
からじゃないの?

21 :
wpfでレイアウトしたいです
よくある、左、中央、右というペインを作りたいです
単純にグリッドを3つ並べるだけでは駄目なようですが、良いコントロールはありますか?

>>20
そうかもしれません、、、

22 :
>>21
先の質問についてだけど、データバインドを理解していないんじゃないだろうか
WPF使うんだったら、データバインド使わないと損ですよ。

23 :
>>21
レスであるように、先にバインド覚えたほうがいいよ。いっぱいコントロール自作することになるから

24 :
>>21
Gridを分割するかDockPanel
境界をマウスで動かしたりしたいなら前者

25 :
>>24
gridですか
formにあったsplitcontainerみたいなのがなくなっていたんでわからなかったです

>>22,23
知らなかったので。今バインドってのをやってみました
Xamlに変数をバインドしておいて、プログラム側でそれを書き換えるというイメージでいいんですか?
<Button Content="{Binding X}" />
みたいな感じですね
解説が難しいのでなんのメリットがあるのかイマイチわかりませんが、Xaml側のX変数が複数だった場合、手作業で何箇所も書き直すより効率的だねってことですかね。または、フォームを複数作った場合、別のフォームでも数値を共有できたり。

26 :
WinFormsの事は忘れるんだ

27 :
忘れます
もともとwinformのソフトの文字がちっちゃくて、不満だったから自分でつくろうと思ってるので
あれって、拡大とか出来ないんですね

28 :
Data Binding なら、Vue.js だろ

29 :
>>21
レイアウト関係はパネルっていう種類のコントロールを使う
ここをGoogle翻訳につっこんで読むといい
https://wpf-tutorial.com/panels/introduction-to-wpf-panels/
そんな難しい英語じゃないからそのまま読んでもいいけど

30 :
>>29
どうも ベースはグリッドでやってみます

31 :
>>30
他のパネルあるのになんでグリッド使うの?

32 :
>>31
wpfだとグリッドが一般的なやり方だと思っていたからです
どういうセオリーがあるのかまだわかっていません

33 :
>>32
>>29読めよ

34 :
StackPanelしか使ったことないな…

35 :
>>33
読みました
エクスプローラのような3ペインにどれが適切かわかりませんから、今ひとつずつやってます

36 :
今stackpanelを使っていますが、エクスプローラのように左右が細長くて、
20% 60% 20%というふうに出来ますか?子要素に何を指定するといいですか?%指定は出来ないようです。
絶対値を指定すると全画面にしたときにレイアウトが崩れるから駄目ですよね

37 :
更に境界線を←→で調整したいです
チュートアレば教えてください

38 :
>>37
GridSplitter

39 :
>>37
https://blog.okazuki.jp/entry/2014/12/27/200015

ここをイチから読みなせえ

40 :
↑あい

41 :
>>38
どうも 自動で境界線にフィットしてくれるんですねこれ
<StackPanel Orientation="Horizontal">
<Button Content="hoge" />
<GridSplitter HorizontalAlignment="Stretch" Width="5"/>
<Button Content="hoge" />
<Button Content="hoge" />
</StackPanel>
でもこれやっても動作しないのはなぜでしょうか?
ボタンも画面いっぱいまで広がりません。

42 :
>>41
GridSplitterは縦分割もしくは横分割したGridで使うものだよ

43 :
↑確かに名前の通りですね
gridで試してみます

44 :
>>36
>%指定は出来ないようです

おいおい勝手に決めちゃうな、ちゃんとできるよ。
単に2:6:2になる値にすればいいだけ。

45 :
アスタリスクで指定できるんですね
すみません

46 :
mvvmという概念がよくわからないのですが、
mはモデル、vはビュー、vmはビューモデルですよね
wpfのプロジェクトでいうと、ビューはxamlで、vmはmainwindow.xaml.cs
mはビューに表示する数値を処理する関数を保存しておくファイル(自分で作る?)という感じでしょうかね
超絶簡単なチュートはないでしょうか?どこも説明が難しいです。

47 :
MVVMなんて最初は意識しないでformsみたいにxaml.csにそのまま処理書くのでいいよ

48 :
>>46
*.xaml.csはViewの一部。ViewModelじゃない。

49 :
>>47,48
そうします
わかわからんですし、大規模になることはないので

50 :
wpf & mvvm が普及しなかったのはこの敷居の高さなんだよな…

51 :
>>50
コミュニティに頼らずに自前でそこそこサポートするのが売りだったのに、この辺りから放棄し始めたんだよな

52 :
wpfって将来性がないってことですか?formの代替えって他にあるんでしょうか?

53 :
Electron

54 :
極論するとWindows上で動くアプリケーション自体が下火だからなぁ
PC上のローカルなリソースを触らない限りはJavaScriptのSPAで書いとけばWindows以外でもそのまま動くし
MVVMもVueやAngularで始めるほうが理解しやすいように思えるし

55 :
想像ですけど、jsベースだとローカルでもwebでも行けるから便利ということですよね
v

56 :
機能からgridレイアウトをやって、ある程度形はデキたんですが、縦に目一杯表示されません。
調べるとverticalalignmentをストレッチにすればいいということなんですが、駄目です
親も子もストレッチかけてるんですが、どこが駄目でしょうか。

ウインドウのサイズがデフォルトのサイズの場合は100%までストレッチされますが、全画面表示まで拡大すると、stackpanel_innerにデフォルトのサイズが適用されます。

https://ideone.com/3RZafi

57 :
>>56
stackpanel_outerはDockPanelに変更して、MenuにDockPanel.Dock="Top"追加
stackpanel_innnerは無くすか、StackPanel以外(DockPanel/Grid等)にする

58 :
↑どうもデキたです
stackpanelがなぜ駄目なんでしょうか
htmlのインライン要素のような扱いなんでしょうか。

59 :
>>52
以前は、ストアに対応していない(しない)などの方向から
WPF終了説が言われていたのだけど、それが変化してきたようで、
WPFの利用がもっと増加する可能性も出てきたみたい
ここ数か月の発表に注意してみるといいかもしれない。
デスクトップアプリが見直されてきている流れもあるので。

60 :
MSが一度見限ったプロダクトを見直した例はない
時間は有限なんだからこういうのは悪い方に考えたほうがいいよ

61 :
「見限った」「見直した」って具体的にどういうことを指しているんだろう。

62 :
見限った → メンテナンスモードに切り替えた
見直した → 再度アクティブな開発を始めた
かな

63 :
そういう意味でなら、WPFはまだ見限られてはいないわけだ。

64 :
WPFはとっくの昔にメンテナンスモードに入ってる
UWPだけがアクティブ

65 :
>>64
>UWPだけがアクティブ
WPFはともかく、MSのこの数か月見てた方が良いよ

66 :
>>65
Build 2019でCore対応以外になんかWPF/WinFormsの新しい話題あったっけ?
MSを信じるのは勝手だけど、本当にそれが自分にとってプラスになるのかは一度立ち止まってよく考えてみた方がいいよ
君自身のキャリアの問題だ

67 :
結局、c++が普遍的なんでしょうか。
やったことはないですが、個人で使うものではないとか。

68 :
>>66
そのCore対応がデカいんじゃないか
どれだけ投資してると思ってんだよ

69 :
>>68
そう思う?移植完了の後はロードマップ真っ白なのに?
ちなみにdotnet/wpfは4人くらいで作業していて、必要最小限の単純な移植を超える仕事は厳しく禁じられているようだ

70 :
>>65
core対応でアクティブだと言えるならWPFだけじゃなくwin formsも
アクティブと言うことになるけど…

アクティブじゃないよ
もう開発してないよ

71 :
一度捨てたと思ったデスクトップの必要性が再認識されてきている。
これから夏にかけxaml islandの話題がMSより増えて行くだろうから
まずはそちらを気にした方が良い。デスクトップもUWPだけで行きま
しょうというMSの方向性が大きく変化したことは確かだから。
UWPのコントロールもそれぞれが共有できる方向に変化してきたので。
ただし、FORMに関してのxaml ilandはどうやるの?という疑問はある。
とはいえ、WPFが新たに拡張されてという話とはちょい異なる。
この数か月のマイクロソフトの発表をみましょ。

72 :
>>69
もしかしてひとつのフレームワークに4人ってのが少ないとでも思ってる?

73 :
MSレベルで4人雇ったら、年5000万位かかるか

74 :
フルタイムで作業してるのは一人だけっぽいね

75 :
>>74
C#だってフルタイムは一人だけやでw

76 :
あれだけ押してるBlazorもフルタイムは1人だもんね

77 :
WPFが好きすぎて頭が逝っちゃってる人の集まり?

78 :
嫌いなのに張り付いてる方が頭が逝ってるだろ

79 :
ID:00e1l8X+はマ板で呟いてくれんかね

80 :
>>73
MSレベルっつーか人月単価100万ってそんなに優秀じゃないぞ

81 :
この中でvb.net派の人いるかな....
新しいプロジェクト作成するたびににC#に移行しようと思っても、やっぱりVB選んでしまう...
おかげでC#のサンプルでも即座にVBに変換できるようになったわ

82 :
これだから、アラフィフのおじいちゃんは...

83 :
ぶいびーww

84 :
別にVB.NETでもかまわんと思うけどね
C#を推奨したい日本マイクロソフトのバイアスがずっと続いてるけど、ちゃんと他人にも分かる様なコード書けば問題無い
まあ、それがVBプログラマーの悪い所だが

85 :
VB.NETでラムダを多用するようなソースコードを書くと見づらくてたまらないんだよな

まあ一人で書いてるソースであれば好きにすればいいんじゃないとも思うけど
引き継ぎや担当者アサインのことを考えるとちょっとなあ
若手・未経験者に今更VB.NETを覚えさせるのも後ろめたいというか倫理的に問題があるし
かといって「VB.NET出来ます」っていう人のスキルって大抵VisualStudio2005〜2008あたりで止まってる人が多いし
新しめの(VS2015/2017あたりの)文法を使うならそれこそC#で書くほうがスマートだし

86 :
俺は基本的にはVB派だが、ラムダ式だけは何とかならんかったのかと思うわ

あとヌル合体演算子はよ

87 :
今あえてC#よりVBを選ぶ理由を知りたい

88 :
マイクロソフトが好んでやりたいというより、VBで行きたいという声がスゲー多いためにそうせざるを得ないということだろな。これが人間社会ちゅうものなんだろう。

89 :
リストボックスに画像表示するにはなんの関数を使うのか教えてください
ヒントだけでいいです

String[] img = System.IO.Directory.GetFileSystemEntries(
@" C: \Users\ワイ\Desktop"
);
//Directory.GetFileSystemEntries Method
for (int i = 0;i< files.Length;i++) {
listbox_right.Items.Add(img[i]);
これだとテキスト表示になります
そもそもlistboxはテキストのみなんですかね。

90 :
>>89
WPFの場合はコードはそれでいい。
XAML側でListBoxのItemTemplateを定義し、ImageのSourceプロパティに{Binding}でバインドする。
何を言っているのかまるで意味がわからないと思うが、それがWPFなんだよね。
https://docs.microsoft.com/ja-jp/dotnet/framework/wpf/data/data-templating-overview?view=netframework-4.8
まずはこの辺りのドキュメントを完全に理解できるようにならないと話にならない。
はっきり言って、今更こんな複雑怪奇な終わったフレームワークを無理に覚える価値はない。時間を無駄にする前にWPFは止めなさい。

91 :
じゃあ代わりに何をすればいいのですか?electronはメモリ食うという噂が
vs codeは実際そうです

92 :
>>91
Windowsのデスクトップアプリは迷走しまくっている
UWPも先行きが怪しくなってきて、もはやMS自身も今後どれを推奨するか明確に決まっていないという無茶苦茶な状況だ
・スキルの汎用性を重視する : いっそWebへ乗り換えるか、ElectronでWebベースの技術で作る
・学習コストを最小化する : WinForms
なるべく時間を無駄にしないためには今ならこのどちらかだろうな

93 :
electronですか、rpgエディタみたいなの作れますか・

94 :
>>92
横からですが、参考になりました。
いろいろググってて数年前の情報で、「新規開発で WPF を選択しない理由はない」みたいなことが書いてあって、
調べ始めたところでした。
ざっと読んだ感じ、昔の MFC や OWL の Doc / View みたいな感じ?

95 :
>>93
そりゃ作れるけど、ゲームならUnity使ったほうがいいんじゃないか?
ゲーム用の開発スイートだからゲーム本体はもちろんだが、簡単なGUIアプリも十分に作れる
あと個人的にアドバイスさせてもらうと、ゲームはまずゲーム本体から作った方がいい
俺も初心者の頃に同じことをやろうとしたことがあるから分かるが、ツールから作ろうとすると結局後で無駄になる
エディタなんてexcelで十分

96 :
勉強も兼ねてるので1から作ろうとしています
2d専用のウルフエディタみたいなものを目指してますね

electronだと重いみたいなことが言われますが、2dなら問題ないと思います

97 :
バインディングの超簡単なサンプルってないですか?
テキストボックスに文字をバインドするという仕組みなんですが。
<TextBox Name="textbox_center" Text="{Binding x}"/>
プログラム側でのx変数への文字の指定方法が見つかりませンでした

また、そもそもバインドとは、タグのプロパティに変数を指定する仕組みということでしょうか?

また、set ; getみたいなやつの意味がわからないです
超簡単なサンプルのページ教えてください

98 :
>>97
> set ; getみたいなやつ
自動実装プロパティのことかな

99 :
WPF binding
で検索するといっぱい出てくるよ

100 :
>>97
set;get;はここ
https://ufcpp.net/study/csharp/oo_property.html

てかそれの意味がわからないならWPFより先にC#の勉強しろや


100〜のスレッドの続きを読む
十進BASIC
【GPGPU】くだすれCUDAスレ part8【NVIDIA】
【Delphi】Embarcaderoオッチャ その31【C++ビルダ】
Java入門・初心者質問スレ Part.10
【最強CUI】PowerShell -Part 2
古代VBプログラマ質問スレ(Ver.6.0 まで) part65
Excel VBA 質問スレ Part62
☆★Java質問・相談スレッド181★★
知ってるとプログラミングに役立つ数学知識
SDL=Simple DirectMedia Layerでゲームだ
--------------------
【安倍首相】11万人避難指示の夜に「赤坂自民亭」適切だったか検証 ★3
「梅毒」が若い女性に増加 妊婦が感染すると胎児にも影響し40%の子が死亡も
【FTP】パワーメーター58watts【W/kg】
■□   安座間美優 11   □■
大東京ビンボー生活マニュアル-4巻-
【テレビ】ヒカキン、タワーマンションに住む理由に「かわいそう…」「怖い」と驚きの声
【NHK金沢】鹿島綾乃アナ★16【じわもんラジオ】
【凸禁止】instagramダイエッタースレ★53
30代会計士受験生の不安は異常
【お金は拾うものプロジェクト】KAZMAX★77【FIP投資顧問】〜情弱向け詐欺サロン〜
【バーチャルYouTuber】.LIVEアイドル部アンチスレ#11830【アップランド】
沢田亜矢子、単身渡米し出産、シングルマザーに
◆うさぎのメルヘン神社◆(-x-)25
うんちして
【テレビ】<木下優樹菜>夫・フジモンと8時間大ゲンカ!
五反田で
タリーと私の秘密の時間〜1st Evening
AndroidはなぜiPhoneに勝利したのか914勝目
【PS4】Death end re;Quest(デスエンドリクエスト) 7end
ヒーリングっど プリキュア ++HEALIN' GOOD PRECURE++19
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼