X



ふらっと C#,C♯,C#(初心者用) Part145
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん (ワッチョイ 1e7b-qjLW)
垢版 |
2019/10/07(月) 20:16:17.93ID:9eyAES450
!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
0952デフォルトの名無しさん (ワッチョイ 0d7d-nO0S)
垢版 |
2019/12/01(日) 16:07:57.01ID:r7b9vkne0
ASP.NET Webフォームでオブジェクト指向な作りって出来ますか?Pageクラスを継承した画面ごとのクラスが基本となると思うんですが、それらとは別にドメインオブジェクトを定義すればいいんでしょうか?
古いフレームワークのせいか、参考になる情報がWeb上で見つからず困っています
0956デフォルトの名無しさん (アウウィフ FFcd-Qbqw)
垢版 |
2019/12/01(日) 17:30:22.41ID:zxgavQqmF
mdb は Access 無くても作れるし使える
wsh からも作れるし
python からでも win32com とか adodb とかで生成も操作も可能
0964デフォルトの名無しさん (ワッチョイ 2590-8b9h)
垢版 |
2019/12/02(月) 21:29:05.38ID:TV8SuK+L0
組み込みっていったっていまどきマルチスレッド当たり前で、要は
マルチユーザーでアクセスするのと同じなんだが、組み込みDBは行ロックが
ないのが痛すぎる。大きめのバッチ走らせると行ロックないから
他から更新できなくなるし。
0966デフォルトの名無しさん (ワッチョイ 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メソッドに匿名のオブジェクトを作成して渡すのであれば、宣言を含めきちんと作成した後者のコードになるような気がしてしまいますが・・・・一体どういうことなのですか?
0969デフォルトの名無しさん (ワッチョイ a22d-Mdr6)
垢版 |
2019/12/03(火) 00:00:10.26ID:joV0JnEl0
>>967=968
ありがとう、こういうものだったのか
全然知らなかった助かったよ
0970デフォルトの名無しさん (ワッチョイ a54f-MSc7)
垢版 |
2019/12/08(日) 19:26:34.55ID:NRgw7da20
WindowsフォームのListBoxのアイテムの順番を
マウスでドラッグして移動出来たりはしないでしょうか?
0972デフォルトの名無しさん (ワッチョイ a54f-MSc7)
垢版 |
2019/12/08(日) 21:37:23.18ID:NRgw7da20
ありがとう!やってみる
0978デフォルトの名無しさん (ワッチョイ 1524-Fgt1)
垢版 |
2019/12/11(水) 11:18:11.21ID:mMKqVbip0
WPFのStack、WrapPanelなどのコンテナ上の余白クリック時にイベントを追加したいのですが、Background="#00000000"とすることでそれ自体は達成することが出来ました
しかし該当コンテナ上に配置されてるButtonなどのコントロールをクリックしたときもコンテナに追加したクリックイベントを拾ってしまいます
あくまで余白クリック時のみ発生させたいのですが、何か方法はないでしょうか?
0984デフォルトの名無しさん (ワッチョイ 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のような名前に変更しなければならないのは気持ちが悪いです
そもそも先に配置したコントロールを削除したのに重複エラーと言われてしまうのがよく解りません
一旦配置してしまうと、削除してもどこかにデータが残ってしまうのでしょうか?
0985デフォルトの名無しさん (ドコグロ MM46-BCWm)
垢版 |
2019/12/28(土) 09:45:41.95ID:pvVVcNyyM
XAMLを見て必要なら手で直せとしか
WPFのデザイナは貧弱であり、基本的にはデザイナは補助と割り切って手でXAMLを弄る必要があるし、それが認められている
WPFは既にメンテナンスモードに入っており、今後改善される見込みもない
あとWinFormsと異なりWPFではどうしても必要な場合を除きコントロールのNameは指定しないのが基本
0986デフォルトの名無しさん (ワッチョイ 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のことでしょうか?

ただ、上記の通り重複している名前がどこに残っているのか解らないため
根本的な解決になっていません
0987デフォルトの名無しさん (ワッチョイ 2fad-eHIc)
垢版 |
2019/12/28(土) 11:15:27.00ID:rkUgfi/c0
xaml は xml(テキスト)ファイルだから、テキストエディタで開いてその名前で検索してみれば見つかるんじゃないの。
見つけたら余計な設定があるはずなので、それを読み取って自力で削除すれば。
ってことでは。
0988デフォルトの名無しさん (ワッチョイ 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ファイルをテキストエディタで開き直しても中身は同じです
0989デフォルトの名無しさん (ワッチョイ 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;
}
0990デフォルトの名無しさん (ワッチョイ f050-RbSw)
垢版 |
2019/12/28(土) 14:57:45.16ID:oR/9kMuC0
「x:Name="" は基本的には不要」という話は解りました
何度も書いていますが、デザイナにコントロールを配置した時点で自動生成されるコードにx:Nameが存在しているのであって
私が追記したものではありません

それはそれとして、重複エラーになってしまうことの根本的な解決法が知りたいのです
0991デフォルトの名無しさん (ワッチョイ f050-RbSw)
垢版 |
2019/12/28(土) 16:10:36.19ID:oR/9kMuC0
自己解決しました
恐らくデザイナに追加した時点でメモリにロードされ
コードを削除してもメモリ上にデータが残っているので重複とされてしまうようです
一旦xamlファイルを閉じ、開き直してからコントロールを追加するとエラーになりませんでした
0994デフォルトの名無しさん (ワッチョイ e2ad-SvJ4)
垢版 |
2019/12/29(日) 00:55:27.84ID:wQPPCmQj0
>>992-993
既存の開発終えるならそう書くしかなかろう
そんでもってあなたが入門者にMSがそう書いていたら使うでしょう
そもそも既存のWPFが完成品なのかと言われると・・・
0997デフォルトの名無しさん (ドコグロ MM36-BCWm)
垢版 |
2019/12/29(日) 16:33:44.41ID:J2Lmqp1KM
それを言ったらWPF自体が…
だいたい、既存のWPFアプリケーションをSCDで塩漬けにすることでMSや開発者がメンテから解放されるというのが.NET Core移植の目的なわけで、
そもそも新規に使うもんじゃないんだよ
デザイナなんか本来要らないの
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 83日 13時間 18分 29秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況