!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスや酔っぱらいレスはやめてください
>>980を踏んだ人は新スレを建てて下さい。>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっと C#,C♯,C#(初心者用) Part144
https://mevius.5ch.net/test/read.cgi/tech/1563258983/
■関連スレ
C#, C♯, C#相談室 Part95
https://mevius.5ch.net/test/read.cgi/tech/1508168482/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■情報源
https://docs.microsoft.com/ja-jp/dotnet/standard/class-libraries
https://docs.microsoft.com/ja-jp/dotnet/csharp/language-reference/index
https://docs.microsoft.com/en-us/dotnet/standard/class-libraries
http://referencesource.microsoft.com/
・Insider.NET > .NET TIPS - @IT
https://www.atmarkit.co.jp/ait/subtop/features/dotnet/dotnettips_index.html
・DOBON.NET .NET Tips
https://dobon.net/vb/dotnet/index.html
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
ふらっと C#,C♯,C#(初心者用) Part145
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (ワッチョイ 1e7b-qjLW)
2019/10/07(月) 20:16:17.93ID:9eyAES450919デフォルトの名無しさん (ブーイモ MMa6-Ud7Q)
2019/11/28(木) 17:59:07.38ID:lZQsc35zM >>917
しね、とはなんだよゴルァ
しね、とはなんだよゴルァ
920デフォルトの名無しさん (ワッチョイ f538-CTFU)
2019/11/28(木) 18:06:17.42ID:A6hZkiU20 >>917
まあこういう文章だと語尾がしねに読めちゃうのはしょうがないしね
まあこういう文章だと語尾がしねに読めちゃうのはしょうがないしね
921デフォルトの名無しさん (ワッチョイ a901-f/qG)
2019/11/28(木) 18:21:36.60ID:XY/WHPaW0 「〜だしね」からの「しねとは何だ!」ってのはいつものお約束だろw
むしろ愛を感じるわ。
むしろ愛を感じるわ。
922デフォルトの名無しさん (ドコグロ MM71-MhVQ)
2019/11/28(木) 19:31:57.14ID:jLfyQeMzM >>914
> VisualStudioにsqliteいれといてくれたらいいのにね
2019は知らんけど2017はVisual Studioのインストール時にSQL-Server LocalDBを入れるかどうかを聞いてきたような気がする
LocalDBは外部からの接続できないだけで中身はほとんどSQL-Server
Visual Studioからテーブル開いてデータを弄ることもできるしそこそこ便利よ
> VisualStudioにsqliteいれといてくれたらいいのにね
2019は知らんけど2017はVisual Studioのインストール時にSQL-Server LocalDBを入れるかどうかを聞いてきたような気がする
LocalDBは外部からの接続できないだけで中身はほとんどSQL-Server
Visual Studioからテーブル開いてデータを弄ることもできるしそこそこ便利よ
923デフォルトの名無しさん (ワッチョイ d9da-Cro1)
2019/11/28(木) 19:36:42.43ID:VrR/a7te0 sqliteもlinqで使えるの?
924デフォルトの名無しさん (ワッチョイ 9242-3RYV)
2019/11/28(木) 20:05:23.89ID:/zg9SHoG0 >>923
使いたいときはentityframeworkっていう似たようなものを被せて使います
使いたいときはentityframeworkっていう似たようなものを被せて使います
925デフォルトの名無しさん (ワッチョイ b5da-9mSp)
2019/11/28(木) 20:27:08.97ID:+uF2PV0n0 山車ね
926デフォルトの名無しさん (ワッチョイ 0901-R3ru)
2019/11/28(木) 20:59:45.72ID:huhp3ZI30927デフォルトの名無しさん (ワッチョイ 0901-R3ru)
2019/11/28(木) 21:06:27.46ID:huhp3ZI30 >>915-918
nugetも入れたほうがいいのかお
nugetも入れたほうがいいのかお
928デフォルトの名無しさん (ブーイモ MMd5-/3vA)
2019/11/28(木) 23:11:59.46ID:ttkv3u0hM genericsの〈T〉のTって動的に入れるのは無理?
System.Typeはわかってるんだが
System.Typeはわかってるんだが
929デフォルトの名無しさん (アウアウウー Sacd-e3ak)
2019/11/28(木) 23:17:10.55ID:1K1GwsjBa >>928
Type.MakeGenericType
Type.MakeGenericType
930デフォルトの名無しさん (ワッチョイ f538-CTFU)
2019/11/28(木) 23:52:03.59ID:A6hZkiU20 >>927
nugetを入れると言う以前にVS使ってソリューションて作るとすぐ使える状態にあるし
SQLiteを始めとして外部ライブラリを導入するならnuget使うのはc#では基本ツールと言えるので、使えたほうが良い
パッケージ管理にnugetが最適かは置いておくとして
nugetを入れると言う以前にVS使ってソリューションて作るとすぐ使える状態にあるし
SQLiteを始めとして外部ライブラリを導入するならnuget使うのはc#では基本ツールと言えるので、使えたほうが良い
パッケージ管理にnugetが最適かは置いておくとして
931デフォルトの名無しさん (ドコグロ MM71-MhVQ)
2019/11/29(金) 07:12:41.61ID:Q2zZop56M >>926
すまん、今ググったら入れるかどうかを聞かれるわけじゃなくて.NET desktop developmentを入れた時のオプションだったわ
https://i.stack.imgur.com/1u3O2.png
一応後からでも入れられるみたい
https://stackoverflow.com/questions/42774739/how-to-install-localdb-2016-along-with-visual-studio-2017
すまん、今ググったら入れるかどうかを聞かれるわけじゃなくて.NET desktop developmentを入れた時のオプションだったわ
https://i.stack.imgur.com/1u3O2.png
一応後からでも入れられるみたい
https://stackoverflow.com/questions/42774739/how-to-install-localdb-2016-along-with-visual-studio-2017
932デフォルトの名無しさん (アウアウウー Sacd-CRcH)
2019/11/29(金) 07:58:25.58ID:MT93SOfea sqliteだと配布も楽だしね。
933デフォルトの名無しさん (ワッチョイ 9242-3RYV)
2019/11/29(金) 08:44:50.30ID:k2xfmaZa0 sqliteやるとして、Dapperを使うかEF使うかは意見が分かれるところだね
ついでにSQLから始めるってことでDapperをお薦めしますが
EFはSQLを知らなくてもなんとかなるが、そのうち壁にぶち当たるだろうからね
ついでにSQLから始めるってことでDapperをお薦めしますが
EFはSQLを知らなくてもなんとかなるが、そのうち壁にぶち当たるだろうからね
934デフォルトの名無しさん (アウアウウー Sacd-e3ak)
2019/11/29(金) 08:52:58.95ID:buffyidfa SQLiteとEFの組み合わせはテスト専用だ
EFはサーバー用のフレームワークなのでSQLiteを使うようなスタンドアロンなアプリで使用されることは基本的にないし、
EFなんか被せたら軽量なSQLiteが台無し
EFはサーバー用のフレームワークなのでSQLiteを使うようなスタンドアロンなアプリで使用されることは基本的にないし、
EFなんか被せたら軽量なSQLiteが台無し
935デフォルトの名無しさん (アウウィフ FFcd-Qbqw)
2019/11/29(金) 12:06:03.16ID:N/f9f1S7F SQL-Server Local DB って MSDE のこととちゃうんけ
936デフォルトの名無しさん (ドコグロ MM71-MhVQ)
2019/11/29(金) 12:25:43.27ID:Q2zZop56M >>935
どんだけ情報更新されてないんだよw
どんだけ情報更新されてないんだよw
937デフォルトの名無しさん (ワッチョイ 1933-XJEi)
2019/11/29(金) 12:29:53.68ID:bcKuqIh50 MSDEつーか、SQL Server Expressだっけかな
938デフォルトの名無しさん (アウウィフ FFcd-Qbqw)
2019/11/29(金) 12:30:30.51ID:N/f9f1S7F 間違ってなくて安心した
939デフォルトの名無しさん (ワッチョイ 6e7c-1cCl)
2019/11/29(金) 12:45:06.14ID:IdASmNxu0 いや間違ってる
MSDEの後継はSQL Server Express
Local DBはそれとインターフェイス互換性を持たせた別製品
ExpressとCompactのあいのこみたいなもの
MSDEの後継はSQL Server Express
Local DBはそれとインターフェイス互換性を持たせた別製品
ExpressとCompactのあいのこみたいなもの
940デフォルトの名無しさん (アウウィフ FFcd-Qbqw)
2019/11/29(金) 13:03:59.73ID:N/f9f1S7F ありがとう
SQLite とは関係無いことは判った
SQLite の簡単さとは比べ物にならない
SQLite とは関係無いことは判った
SQLite の簡単さとは比べ物にならない
941デフォルトの名無しさん (ワッチョイ 5561-3RYV)
2019/11/29(金) 14:58:40.82ID:HgnfNDDk0 SQLLiteてUPDATE文に結合テーブル使えないんだっけ
942デフォルトの名無しさん (ドコグロ MM71-MhVQ)
2019/11/29(金) 19:40:54.65ID:/qBs46JEM >>939
> Local DBはそれとインターフェイス互換性を持たせた別製品
> ExpressとCompactのあいのこみたいなもの
お前もテキトーなこと書くなよw
LocalDBはエンジンはExpressとほぼ同じで外部からの接続ができないだけ
Compactは全く別物で使えるSQLも異なる
> Local DBはそれとインターフェイス互換性を持たせた別製品
> ExpressとCompactのあいのこみたいなもの
お前もテキトーなこと書くなよw
LocalDBはエンジンはExpressとほぼ同じで外部からの接続ができないだけ
Compactは全く別物で使えるSQLも異なる
943デフォルトの名無しさん (ワッチョイ b5da-9mSp)
2019/11/29(金) 21:23:09.62ID:PfmOYk0/0 20年程前にSYBASEと分離したけど
大元は同じだったり
大元は同じだったり
944デフォルトの名無しさん (スププ Sdb2-Hu9A)
2019/11/29(金) 22:31:53.69ID:XR55tucPd MS製でサーバーインスコ必要ないSQLはmdbということになる?
945デフォルトの名無しさん (ワッチョイ 926a-XJEi)
2019/11/29(金) 22:40:51.06ID:IQbSmMMZ0 >>944
JETなりは必要になるんじゃ?
JETなりは必要になるんじゃ?
946デフォルトの名無しさん (アウアウウー Sacd-e3ak)
2019/11/29(金) 22:53:16.05ID:xO30F0VUa なんでMSはAccessやめちゃったんだろうな
さっさとWeb移行して真面目に開発続けてればSalesforceみたいな糞に出番はなかったのに
さっさとWeb移行して真面目に開発続けてればSalesforceみたいな糞に出番はなかったのに
947デフォルトの名無しさん (ワッチョイ 655f-8b9h)
2019/11/29(金) 22:58:29.32ID:J8/N3ImM0 >>944
SQL Server Compact…はまだ生きてたっけ?
SQL Server Compact…はまだ生きてたっけ?
948デフォルトの名無しさん (ワッチョイ 926a-XJEi)
2019/11/29(金) 23:00:31.63ID:IQbSmMMZ0 >>947
Compactは終了で、その代わりがlocalDBなんじゃなかったっけ
Compactは終了で、その代わりがlocalDBなんじゃなかったっけ
949デフォルトの名無しさん (ワッチョイ 0901-R3ru)
2019/11/29(金) 23:16:39.14ID:Z1Tig2XP0950デフォルトの名無しさん (ワッチョイ 8101-Tzvd)
2019/11/30(土) 10:23:08.45ID:o+UOyhff0951デフォルトの名無しさん (ワッチョイ 9242-3RYV)
2019/11/30(土) 14:43:46.04ID:20NjWWXF0952デフォルトの名無しさん (ワッチョイ 0d7d-nO0S)
2019/12/01(日) 16:07:57.01ID:r7b9vkne0 ASP.NET Webフォームでオブジェクト指向な作りって出来ますか?Pageクラスを継承した画面ごとのクラスが基本となると思うんですが、それらとは別にドメインオブジェクトを定義すればいいんでしょうか?
古いフレームワークのせいか、参考になる情報がWeb上で見つからず困っています
古いフレームワークのせいか、参考になる情報がWeb上で見つからず困っています
953デフォルトの名無しさん (ワッチョイ f538-CTFU)
2019/12/01(日) 17:00:26.82ID:B1zYgJIz0 ドメインオブジェクトはどんなフレームワークでも作るのはまあ基本
954デフォルトの名無しさん (ワッチョイ 122f-Ql8R)
2019/12/01(日) 17:01:47.30ID:BdsW8ng60 C#にしてもVB.Netにしても、オブジェクト指向な言語だからできるだろ
オブジェクト指向な作りってどんなのを指してるんだ?
オブジェクト指向な作りってどんなのを指してるんだ?
955デフォルトの名無しさん (ワッチョイ 6e02-14DC)
2019/12/01(日) 17:09:16.81ID:4wBvZE+S0 extendsを使いグローバル変数で回さないことかな
956デフォルトの名無しさん (アウウィフ FFcd-Qbqw)
2019/12/01(日) 17:30:22.41ID:zxgavQqmF mdb は Access 無くても作れるし使える
wsh からも作れるし
python からでも win32com とか adodb とかで生成も操作も可能
wsh からも作れるし
python からでも win32com とか adodb とかで生成も操作も可能
957デフォルトの名無しさん (ワッチョイ 9201-MhVQ)
2019/12/01(日) 17:54:34.01ID:Enyr5Fgf0958デフォルトの名無しさん (オッペケ Sr79-o7DB)
2019/12/01(日) 20:13:56.38ID:/00m1kV3r 昔はVSでもGUI上からmdb作れた気がするけどc#からコードで作れたと思う
959デフォルトの名無しさん (ワッチョイ 2517-3RYV)
2019/12/01(日) 20:33:15.39ID:eAT9QJyK0 COMオブジェクト参照するの気持ち悪いな
960デフォルトの名無しさん (ワッチョイ f538-CTFU)
2019/12/01(日) 20:38:52.40ID:B1zYgJIz0 扱い面倒だからね
自分だけなら良いけど
人が触ると直ぐに解放漏れするし
gc.Collect連打とか
自分だけなら良いけど
人が触ると直ぐに解放漏れするし
gc.Collect連打とか
961デフォルトの名無しさん (ワッチョイ 92a5-o7DB)
2019/12/02(月) 00:32:28.82ID:6ndr7bm90 windowsなんてcomの塊なのに
962デフォルトの名無しさん (アウアウウー Sacd-e3ak)
2019/12/02(月) 00:48:30.78ID:GldGaTIna モダンアプリではより完全なCOMベースになったね
.NETなんかいらんかったんや
.NETなんかいらんかったんや
963デフォルトの名無しさん (ワッチョイ f122-Hu9A)
2019/12/02(月) 02:17:05.78ID:seAdfS0z0 >>959
ADO.NETじゃアカンの?
ADO.NETじゃアカンの?
964デフォルトの名無しさん (ワッチョイ 2590-8b9h)
2019/12/02(月) 21:29:05.38ID:TV8SuK+L0 組み込みっていったっていまどきマルチスレッド当たり前で、要は
マルチユーザーでアクセスするのと同じなんだが、組み込みDBは行ロックが
ないのが痛すぎる。大きめのバッチ走らせると行ロックないから
他から更新できなくなるし。
マルチユーザーでアクセスするのと同じなんだが、組み込みDBは行ロックが
ないのが痛すぎる。大きめのバッチ走らせると行ロックないから
他から更新できなくなるし。
965デフォルトの名無しさん (スププ Sdb2-Hu9A)
2019/12/02(月) 22:09:18.94ID:wKwMS0nkd >>964
用途に応じて使い分ければいいんじゃないでしょうか
用途に応じて使い分ければいいんじゃないでしょうか
966デフォルトの名無しさん (ワッチョイ a22d-Mdr6)
2019/12/02(月) 23:30:52.06ID:kOdIgETi0 Newtonsoft.Jsonに絡み、C#の文法や仕組みがよくわからないので教えてください
https://www.newtonsoft.com/json
前者のコードが通ること、対して後者が通らないことの理由がそれぞれよくわかりません
var jsonString = JsonConvert.SerializeObject(new {asdf = "asdf"});
var jsonString = JsonConvert.SerializeObject(new {var asdf = "asdf"});
JsonConvert.SerializeObjecメソッドに匿名のオブジェクトを作成して渡すのであれば、宣言を含めきちんと作成した後者のコードになるような気がしてしまいますが・・・・一体どういうことなのですか?
https://www.newtonsoft.com/json
前者のコードが通ること、対して後者が通らないことの理由がそれぞれよくわかりません
var jsonString = JsonConvert.SerializeObject(new {asdf = "asdf"});
var jsonString = JsonConvert.SerializeObject(new {var asdf = "asdf"});
JsonConvert.SerializeObjecメソッドに匿名のオブジェクトを作成して渡すのであれば、宣言を含めきちんと作成した後者のコードになるような気がしてしまいますが・・・・一体どういうことなのですか?
967デフォルトの名無しさん (ワッチョイ d963-CbTA)
2019/12/02(月) 23:37:45.37ID:uoYmKGGq0 匿名型でvarを使う文法が存在しないからじゃねーの
968デフォルトの名無しさん (ワッチョイ d963-CbTA)
2019/12/02(月) 23:38:00.50ID:uoYmKGGq0969デフォルトの名無しさん (ワッチョイ a22d-Mdr6)
2019/12/03(火) 00:00:10.26ID:joV0JnEl0970デフォルトの名無しさん (ワッチョイ a54f-MSc7)
2019/12/08(日) 19:26:34.55ID:NRgw7da20 WindowsフォームのListBoxのアイテムの順番を
マウスでドラッグして移動出来たりはしないでしょうか?
マウスでドラッグして移動出来たりはしないでしょうか?
971デフォルトの名無しさん (アウアウクー MM41-miCc)
2019/12/08(日) 20:35:42.68ID:FzxO83mcM972デフォルトの名無しさん (ワッチョイ a54f-MSc7)
2019/12/08(日) 21:37:23.18ID:NRgw7da20 ありがとう!やってみる
973デフォルトの名無しさん (ワッチョイ 2b0d-uDkH)
2019/12/11(水) 00:30:39.25ID:Apb01tOE0 vs2019って新規作成でフォーム作れます?いきなりユーザーコントロールしかなくないですか?
974デフォルトの名無しさん (ワッチョイ a501-LTTH)
2019/12/11(水) 00:38:14.09ID:FG7l6DGf0 モルダー、あなた疲れてるのよ
975デフォルトの名無しさん (ワッチョイ 23da-YEgJ)
2019/12/11(水) 00:47:13.40ID:X8nac/9U0976デフォルトの名無しさん (ワッチョイ 2b0d-uDkH)
2019/12/11(水) 01:50:25.70ID:Apb01tOE0 はいはいそうですか
977デフォルトの名無しさん (ワッチョイ 2342-Fgt1)
2019/12/11(水) 07:25:39.35ID:FImiT/Ke0 >>976
右上二行目のコンボボックスが「AddOn」となっているだろうが、そこを「デスクトップ」にする
右上二行目のコンボボックスが「AddOn」となっているだろうが、そこを「デスクトップ」にする
978デフォルトの名無しさん (ワッチョイ 1524-Fgt1)
2019/12/11(水) 11:18:11.21ID:mMKqVbip0 WPFのStack、WrapPanelなどのコンテナ上の余白クリック時にイベントを追加したいのですが、Background="#00000000"とすることでそれ自体は達成することが出来ました
しかし該当コンテナ上に配置されてるButtonなどのコントロールをクリックしたときもコンテナに追加したクリックイベントを拾ってしまいます
あくまで余白クリック時のみ発生させたいのですが、何か方法はないでしょうか?
しかし該当コンテナ上に配置されてるButtonなどのコントロールをクリックしたときもコンテナに追加したクリックイベントを拾ってしまいます
あくまで余白クリック時のみ発生させたいのですが、何か方法はないでしょうか?
979デフォルトの名無しさん (アウアウウー Saa9-XnaB)
2019/12/11(水) 12:35:45.56ID:R9jKaic8a >>978
ルーティングイベントを止めればええ
ルーティングイベントを止めればええ
980デフォルトの名無しさん (ワッチョイ 1524-Fgt1)
2019/12/11(水) 12:54:59.33ID:mMKqVbip0 >>979
if (!(sender is StackPanel)) { e.Handled = true; return; }
これを先頭に追加してみたところ希望の動作になりました。
どうもありがとうございます。
if (!(sender is StackPanel)) { e.Handled = true; return; }
これを先頭に追加してみたところ希望の動作になりました。
どうもありがとうございます。
981デフォルトの名無しさん (ワッチョイ 4b7b-iKQf)
2019/12/11(水) 20:04:02.78ID:ohlEvVsV0 >>980を踏んだ人は新スレを建てて下さい
次スレよろしく
次スレよろしく
982デフォルトの名無しさん (ワッチョイ 1524-Fgt1)
2019/12/11(水) 22:13:29.51ID:mMKqVbip0983デフォルトの名無しさん (ワッチョイ 4b7b-iKQf)
2019/12/11(水) 22:22:20.09ID:L93wxtPA0 >>982
スレたて乙
スレたて乙
984デフォルトの名無しさん (ワッチョイ f050-RbSw)
2019/12/28(土) 00:46:39.13ID:oR/9kMuC0 めちゃくちゃ初歩的な話で恐縮ですが…
Visual Studio 2019でWPFアプリを作ってみようとして最初の最初でつまづきました
参考にしたURLは↓
C# で WPF を使った Hello World アプリ - Visual Studio | Microsoft Docs
https://docs.microsoft.com/ja-jp/visualstudio/get-started/csharp/tutorial-wpf?view=vs-2019
1.新プロジェクトを作成(WPF App(.NET Core))
2.ツールボックス > コモンWPFコントロールからTextBlockをデザインサーフェイス上に配置
3.配置したTextBlockを削除
4.再度、ツールボックスからTextBlockを配置
5.このスコープで重複する名前 'textBlock' を登録することはできません。 と言われエラーになる
コントロールの名称を変更すれば良いのだとは思いますが、
表面上は1つ目のコントロールなのにtextBlock2のような名前に変更しなければならないのは気持ちが悪いです
そもそも先に配置したコントロールを削除したのに重複エラーと言われてしまうのがよく解りません
一旦配置してしまうと、削除してもどこかにデータが残ってしまうのでしょうか?
Visual Studio 2019でWPFアプリを作ってみようとして最初の最初でつまづきました
参考にしたURLは↓
C# で WPF を使った Hello World アプリ - Visual Studio | Microsoft Docs
https://docs.microsoft.com/ja-jp/visualstudio/get-started/csharp/tutorial-wpf?view=vs-2019
1.新プロジェクトを作成(WPF App(.NET Core))
2.ツールボックス > コモンWPFコントロールからTextBlockをデザインサーフェイス上に配置
3.配置したTextBlockを削除
4.再度、ツールボックスからTextBlockを配置
5.このスコープで重複する名前 'textBlock' を登録することはできません。 と言われエラーになる
コントロールの名称を変更すれば良いのだとは思いますが、
表面上は1つ目のコントロールなのにtextBlock2のような名前に変更しなければならないのは気持ちが悪いです
そもそも先に配置したコントロールを削除したのに重複エラーと言われてしまうのがよく解りません
一旦配置してしまうと、削除してもどこかにデータが残ってしまうのでしょうか?
985デフォルトの名無しさん (ドコグロ MM46-BCWm)
2019/12/28(土) 09:45:41.95ID:pvVVcNyyM XAMLを見て必要なら手で直せとしか
WPFのデザイナは貧弱であり、基本的にはデザイナは補助と割り切って手でXAMLを弄る必要があるし、それが認められている
WPFは既にメンテナンスモードに入っており、今後改善される見込みもない
あとWinFormsと異なりWPFではどうしても必要な場合を除きコントロールのNameは指定しないのが基本
WPFのデザイナは貧弱であり、基本的にはデザイナは補助と割り切って手でXAMLを弄る必要があるし、それが認められている
WPFは既にメンテナンスモードに入っており、今後改善される見込みもない
あとWinFormsと異なりWPFではどうしても必要な場合を除きコントロールのNameは指定しないのが基本
986デフォルトの名無しさん (ワッチョイ f050-RbSw)
2019/12/28(土) 11:07:45.18ID:oR/9kMuC0 >>985
おっしゃっている"手で直す"とは、どこのことでしょうか?
例として、
1.TextBlockをデザイナに追加
2.TextBlockタグのx:Nameを"textBlock5"に変更
3.TextBlockを削除(マークアップ側のTextBlockタグも消える)
4.再度TextBlockをデザイナに追加(マークアップ側にTextBlockタグが追加される)
5.TextBlockタグのx:Nameを"textBlock5"に変更
6.重複エラー
このようになるのですが、やはり textBlock5 がどこに残っているのか見つけられません
現在のプロジェクトを対象に"textBlock5"を検索してみましたが見つかりませんでした
プロジェクト作成時はxamlが↓のようになっており
<Window x:Class="HelloWPFApp.MainWindow"
中略
Title="MainWindow" Height="450" Width="800">
<Grid>
</Grid>
</Window>
コントロールを追加するとGridタグ内にタグが追加されます↓
<Grid>
<TextBlock x:Name="textBlock" HorizontalAlignment="Left" Margin="159,236,0,0" Text="TextBlock" TextWrapping="Wrap" VerticalAlignment="Top"/>
</Grid>
参考URLのマークアップでは x:Name="textBlock" が記述されていなかったため、その部分を削除したところエラーは消えました
>コントロールのNameは指定しないのが基本
というのは、ここのx:Nameのことでしょうか?
ただ、上記の通り重複している名前がどこに残っているのか解らないため
根本的な解決になっていません
おっしゃっている"手で直す"とは、どこのことでしょうか?
例として、
1.TextBlockをデザイナに追加
2.TextBlockタグのx:Nameを"textBlock5"に変更
3.TextBlockを削除(マークアップ側のTextBlockタグも消える)
4.再度TextBlockをデザイナに追加(マークアップ側にTextBlockタグが追加される)
5.TextBlockタグのx:Nameを"textBlock5"に変更
6.重複エラー
このようになるのですが、やはり textBlock5 がどこに残っているのか見つけられません
現在のプロジェクトを対象に"textBlock5"を検索してみましたが見つかりませんでした
プロジェクト作成時はxamlが↓のようになっており
<Window x:Class="HelloWPFApp.MainWindow"
中略
Title="MainWindow" Height="450" Width="800">
<Grid>
</Grid>
</Window>
コントロールを追加するとGridタグ内にタグが追加されます↓
<Grid>
<TextBlock x:Name="textBlock" HorizontalAlignment="Left" Margin="159,236,0,0" Text="TextBlock" TextWrapping="Wrap" VerticalAlignment="Top"/>
</Grid>
参考URLのマークアップでは x:Name="textBlock" が記述されていなかったため、その部分を削除したところエラーは消えました
>コントロールのNameは指定しないのが基本
というのは、ここのx:Nameのことでしょうか?
ただ、上記の通り重複している名前がどこに残っているのか解らないため
根本的な解決になっていません
987デフォルトの名無しさん (ワッチョイ 2fad-eHIc)
2019/12/28(土) 11:15:27.00ID:rkUgfi/c0 xaml は xml(テキスト)ファイルだから、テキストエディタで開いてその名前で検索してみれば見つかるんじゃないの。
見つけたら余計な設定があるはずなので、それを読み取って自力で削除すれば。
ってことでは。
見つけたら余計な設定があるはずなので、それを読み取って自力で削除すれば。
ってことでは。
988デフォルトの名無しさん (ワッチョイ f050-RbSw)
2019/12/28(土) 11:24:05.48ID:oR/9kMuC0 >>987
986の書き方では良くなかったでしょうか
xamlファイルの中身は
<Window x:Class="HelloWPFApp.MainWindow"
中略
Title="MainWindow" Height="450" Width="800">
<Grid>
</Grid>
</Window>
となっていて、コントロールを追加するとGridタグ内にタグが追加されます↓
<Grid>
<TextBlock x:Name="textBlock" HorizontalAlignment="Left" Margin="159,236,0,0" Text="TextBlock" TextWrapping="Wrap" VerticalAlignment="Top"/>
</Grid>
コントロールを削除すると、TextBlockタグも消えます
コントロールの追加/削除で変更があるのはこの行だけです
その後、現在のプロジェクトを対象としてx:Nameに指定してあった値を検索しても見つからなかったんです
xamlファイルをテキストエディタで開き直しても中身は同じです
986の書き方では良くなかったでしょうか
xamlファイルの中身は
<Window x:Class="HelloWPFApp.MainWindow"
中略
Title="MainWindow" Height="450" Width="800">
<Grid>
</Grid>
</Window>
となっていて、コントロールを追加するとGridタグ内にタグが追加されます↓
<Grid>
<TextBlock x:Name="textBlock" HorizontalAlignment="Left" Margin="159,236,0,0" Text="TextBlock" TextWrapping="Wrap" VerticalAlignment="Top"/>
</Grid>
コントロールを削除すると、TextBlockタグも消えます
コントロールの追加/削除で変更があるのはこの行だけです
その後、現在のプロジェクトを対象としてx:Nameに指定してあった値を検索しても見つからなかったんです
xamlファイルをテキストエディタで開き直しても中身は同じです
989デフォルトの名無しさん (ワッチョイ 4624-K0SF)
2019/12/28(土) 11:31:09.48ID:iFSWdOZd0 >>986
XamlデザイナではC#エディタと違ってどこで重複してるのかまでは教えてくれないね確か
でもエラー箇所は下線が付くはずだからそれで見つけられるはず
x:Name=""やName=""は名指しでのアクセスが必要にならない限りは指定しないのが普通
そのコントロールでのイベントからのアクセスなら、例えば<Button Click="buttonClick" />なら下記のようにsenderをキャストすることによってアクセス出来るので、Name属性はそうそう必要にならないはず
private void buttonClick(object sender, RoutedEventArgs e)
{
var button = (Button)sender;
}
XamlデザイナではC#エディタと違ってどこで重複してるのかまでは教えてくれないね確か
でもエラー箇所は下線が付くはずだからそれで見つけられるはず
x:Name=""やName=""は名指しでのアクセスが必要にならない限りは指定しないのが普通
そのコントロールでのイベントからのアクセスなら、例えば<Button Click="buttonClick" />なら下記のようにsenderをキャストすることによってアクセス出来るので、Name属性はそうそう必要にならないはず
private void buttonClick(object sender, RoutedEventArgs e)
{
var button = (Button)sender;
}
990デフォルトの名無しさん (ワッチョイ f050-RbSw)
2019/12/28(土) 14:57:45.16ID:oR/9kMuC0 「x:Name="" は基本的には不要」という話は解りました
何度も書いていますが、デザイナにコントロールを配置した時点で自動生成されるコードにx:Nameが存在しているのであって
私が追記したものではありません
それはそれとして、重複エラーになってしまうことの根本的な解決法が知りたいのです
何度も書いていますが、デザイナにコントロールを配置した時点で自動生成されるコードにx:Nameが存在しているのであって
私が追記したものではありません
それはそれとして、重複エラーになってしまうことの根本的な解決法が知りたいのです
991デフォルトの名無しさん (ワッチョイ f050-RbSw)
2019/12/28(土) 16:10:36.19ID:oR/9kMuC0 自己解決しました
恐らくデザイナに追加した時点でメモリにロードされ
コードを削除してもメモリ上にデータが残っているので重複とされてしまうようです
一旦xamlファイルを閉じ、開き直してからコントロールを追加するとエラーになりませんでした
恐らくデザイナに追加した時点でメモリにロードされ
コードを削除してもメモリ上にデータが残っているので重複とされてしまうようです
一旦xamlファイルを閉じ、開き直してからコントロールを追加するとエラーになりませんでした
992デフォルトの名無しさん (オッペケ Srd7-dR36)
2019/12/28(土) 18:23:00.02ID:euZyKjoir .VSでのnet coreのWPF対応が全然ダメダメなのに
>新しい開発には .NET Core をお勧めします。
と書いちゃうMSはダメだろ
>新しい開発には .NET Core をお勧めします。
と書いちゃうMSはダメだろ
993デフォルトの名無しさん (オッペケ Srd7-dR36)
2019/12/28(土) 18:33:26.16ID:euZyKjoir .net coreのWPF自体が未完成品レベルなのに何で使うのかな
994デフォルトの名無しさん (ワッチョイ e2ad-SvJ4)
2019/12/29(日) 00:55:27.84ID:wQPPCmQj0995デフォルトの名無しさん (ワッチョイ efda-BXgI)
2019/12/29(日) 02:31:33.81ID:N0Ta2GQF0 立場上、忖度しないといけないから行間読んでくれってことでしょ。
996デフォルトの名無しさん (オッペケ Srd7-dR36)
2019/12/29(日) 16:24:52.91ID:KHmi1cQer 今のレベルの.net coreのWPFは趣味レベルならいいけど
商売に使うレベルの物じゃない
商売に使うレベルの物じゃない
997デフォルトの名無しさん (ドコグロ MM36-BCWm)
2019/12/29(日) 16:33:44.41ID:J2Lmqp1KM それを言ったらWPF自体が…
だいたい、既存のWPFアプリケーションをSCDで塩漬けにすることでMSや開発者がメンテから解放されるというのが.NET Core移植の目的なわけで、
そもそも新規に使うもんじゃないんだよ
デザイナなんか本来要らないの
だいたい、既存のWPFアプリケーションをSCDで塩漬けにすることでMSや開発者がメンテから解放されるというのが.NET Core移植の目的なわけで、
そもそも新規に使うもんじゃないんだよ
デザイナなんか本来要らないの
998デフォルトの名無しさん (ワッチョイ efda-BXgI)
2019/12/30(月) 08:29:40.81ID:GqGnUSog0 Windows.FormsのDataGridViewで2カラムのみの状態で、カラム幅をちょうど半分ずつにするには
どうすればよいでしょうか?
どうすればよいでしょうか?
999デフォルトの名無しさん (ワッチョイ 9317-K0SF)
2019/12/30(月) 09:22:09.70ID:VA5+g/lT0 グリッド幅を2で割ってそれをカラム幅にセットする
1000デフォルトの名無しさん (ワッチョイ fcde-zEes)
2019/12/30(月) 09:34:46.49ID:dvqJbcrW0 RowHeader「チッす」
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 83日 13時間 18分 29秒
新しいスレッドを立ててください。
life time: 83日 13時間 18分 29秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 芸能人の不倫に「誰と誰が寝たとかで人間性まで否定して叩くの気持ち悪くない?」 三崎優太氏、永野芽郁の不倫報道で私見 ★2 [jinjin★]
- 【🌋】富士山噴火で東京に「火山灰」4.9億㎥の戦慄 2時間で都市機能はマヒ、必要な備蓄は「大地震」以上と識者 [ぐれ★]
- 建設会社勤務、ラップ活動も 川崎女性遺棄の27歳容疑者 [少考さん★]
- 永野芽郁『キャスター』出演継続もドラマ公式インスタから完全に“消えた”! 「二股交際&不倫」報道で視聴者から“降板要求”殺到 ★2 [Ailuropoda melanoleuca★]
- ほんこん 宇多田ヒカル新曲の「夫婦別姓」歌詞に「これはない…俺は名字は統一した方がいいと思う」「感化されてるのか知らんけど」 [muffin★]
- 【発達障害】ADHDの「先延ばし癖」改善に「殴る」は有効か Xで主張流布、専門家は警鐘「ずっとは続かない」 [シャチ★]
- 日本人、ニュースアクセスNo.1の記事が電車の4人席が座れないとかいうしょーもない話題… [667744927]
- 【急募】"死にたい"を耐える方法 [904880432]
- 地蔵
- ふなふな言ってるうちにGWが終わるのをみんなで感慨深く楽しむお🏡
- 「東京に住んでると美術館や舞台オペラ、クラシック公演を毎日見に行ける」⇦これガチで東京以外のジャップでは実現不能だよな… [271912485]
- 【速報】たべっ子どうぶつがパチンコ化