ふらっと C#,C♯,C#(初心者用) Part143

レス数が1000を超えています。これ以上書き込みはできません。
2019/05/16(木) 19:28:06.27ID:s+6oZKe00
!extend:checked:vvvvv:1000:512
次スレを立てる時は↑を2行冒頭に書くこと(1行分は消えて表示されない為)

「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。
他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。
内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。
なお、テンプレが読めない回答者、議論をしたいだけの人は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■関連スレ
C#, C♯, C#相談室 Part93
http://mevius.5ch.net/test/read.cgi/tech/1492818720/
■コードを貼る場合は↓を使いましょう。
http://ideone.com/
https://dotnetfiddle.net/
■前スレ
ふらっと C#,C♯,C#(初心者用) Part142
https://mevius.5ch.net/test/read.cgi/tech/1551908141/

■情報源
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/
-
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
922デフォルトの名無しさん (アウアウカー Sa43-snXu)
垢版 |
2019/07/13(土) 01:06:34.80ID:iqubl+0xa
>>914
ありがとう
調べてみた結果、出来ないっぽいから自作のコントロールでなんとかそれらしくしようと思います
2019/07/13(土) 01:14:28.07ID:QBUcodiM0
>>887
これ逆にDBから取得しない方がいいケースってあるん?
DBから取得するパターンしかしらんわ
2019/07/13(土) 01:16:55.65ID:snyK+LfD0
>>922
質問内容を俺が理解できてないのかな?
↓のページではサイズの異なるボタンが表示されてるけどそういうことではない?
http://neue.cc/2015/09/10_515.html
2019/07/13(土) 01:22:16.58ID:snyK+LfD0
>>923
xml、json等のテキストファイルやxlsxで設定ファイルみたいなの作るとか?
変更することが無いような項目ならコード内に埋め込むとか
要件次第で何が良いかは変わると思うからDB一択とはならんと思うけど
2019/07/13(土) 01:38:48.66ID:Zpl1rRtL0
>>921
ヘッダの位置に透明なパネルを置くのが一番早いかもしれない
勝手に一番目のCellが選択されるのはCurrentCell=nullのときにはFirstDisplayedCellで示されたCellが必ず選択されるから
あとはDataGridViewを継承してMouseDownイベントを無くしたものを作れるかもしれないけどそっちはわからない
927デフォルトの名無しさん (アウアウカー Sa43-snXu)
垢版 |
2019/07/13(土) 01:41:03.71ID:iqubl+0xa
>>924
ありがとう
ツールで提供されてる丸ボタンとかを使いたいんだけど、それらは提供されたボタンのスタイルで決まってて領域を広げてもボタン自体のサイズは変更出来ないような感じなんだけど
実際はアニメーションを使った丸型のトグルボタンを丸ボタンのサイズと同じにしたかったので似たようなことを考えた人がいればと思い質問してみました
2019/07/13(土) 07:48:45.74ID:4NawiDim0
>>926
透明なパネルって作れたっけ?
やるんならDrawToBitmapでヘッダ部分をキャプチャして
グリッドのヘッダに重ねたコントロールに描画するのがいいと思う
2019/07/13(土) 13:12:36.40ID:NDmMB+Lma
いい手法とはまったく思えないけど透明で常に最前面のトップレベルウィンドウなら作れるね
2019/07/13(土) 17:42:32.06ID:4NawiDim0
>>921
http://ideone.com/iCo8sd
DataGridViewのソースを覗いてみたけどWndProcをいじる以外に方法が無さげ
2019/07/13(土) 18:11:32.06ID:k49AlHPTp
透明なパネルなんて詐欺サイトかチートツールじゃ重宝されそうだな。
2019/07/13(土) 18:42:46.89ID:tImovYMga
意味不明すぎるw
2019/07/13(土) 19:50:41.36ID:qsxihLOz0
>>921
覆うのは良くないなと思ってはいたけど継承でできたわ
public class DataGridViewEX : System.Windows.Forms.DataGridView
{
protected override void OnMouseDown(System.Windows.Forms.MouseEventArgs e)
{//列ヘッダでのMouseDownで勝手に先頭のCellが選択されないようにする。ResizeとSort可
bool b = this.CurrentCell == null && this.HitTest(e.Location.X, e.Location.Y).Type == System.Windows.Forms.DataGridViewHitTestType.ColumnHeader;
base.OnMouseDown(e);
if (b) this.CurrentCell = null;
}
}
または
public class DataGridViewEX : System.Windows.Forms.DataGridView
{
protected override void OnMouseDown(System.Windows.Forms.MouseEventArgs e)
{//列ヘッダでのMouseDownを全て無効にする
if (this.HitTest(e.Location.X, e.Location.Y).Type == System.Windows.Forms.DataGridViewHitTestType.ColumnHeader) return;
base.OnMouseDown(e);
}
}
下は>>930と同じような使い勝手になるはず。MouseEventArgsだからクリックボタンによる処理もメソッドの中に組み込める
勝手に先頭のCellが選択されるのはFocus()やSelect()実行しても起こるけど、まず使わないだろうしそのあとにDataGridView.CurrentCell = nullを入れてもいい
列のResizeでCell選択されるの前に悩んでいてFirstDisplayedCellとFocusまで調べていたけど見た目だけの問題だし面倒だから諦めていた
その質問のおかげで改めて調べる気になったから逆に感謝w
>>928
例えばDataGridViewの子コントロールとして用意して(datagridview.Controls.Add(panel))、BackColorをTransparentにするだけ。特別なことはいらなかったはず
2019/07/13(土) 21:21:56.19ID:J0SpyLLfa
>>933
子コントロールの背景色を透明にしても
最上位のコンテナ(つまりForm)の背景が透けて見えるだけじゃなかったかと
2019/07/13(土) 21:32:23.61ID:qsxihLOz0
>>934
じゃあ気が付いてない何か特別なことが必要なのかな
DataGridViewじゃなければ過去に何度もやっているしDataGridViewに重ねるのも確認してから書き込んだのだけど
936デフォルトの名無しさん (ワッチョイ 3e2d-PPDc)
垢版 |
2019/07/14(日) 10:27:51.44ID:/gKQotNU0
メソッド定義の場面でメソッド名の後にコロンが付いているのを初めて見ました
>protected PizzaStore() : this(new BaseIngredients()){} // 動画内24行目 https://youtu.be/agkWYPUcLpg?t=1678
このコロンはどういう意味の文法なんですか?
2019/07/14(日) 10:43:27.29ID:1ykVpntz0
>>936
それコンストラクタだぞ
引数なしのコンストラクタが引数付きのコンストラクタに引数を付けて呼び出してる
938デフォルトの名無しさん (ワッチョイ 3e2d-PPDc)
垢版 |
2019/07/14(日) 10:50:14.89ID:/gKQotNU0
>>937
そういうことなんですか、一見パッとわかりませんでした
ありがとうございます
2019/07/14(日) 11:29:43.66ID:1V0xuz/f0
string str_test = ""aaaaaaaaaaaaa;
txt_word.Text = str_test; // ←デバッグをすすめるとこのコードの実行になぜかフリーズします。

これは何が原因なのでしょうか?
2019/07/14(日) 12:20:15.77ID:67ABvZrhM
txt_wordクラスのTextプロパティのセッターが
文字列セットするとフリーズする実装になってるんでしょ
2019/07/14(日) 12:22:02.89ID:BItK59/l0
>>939
""aaaaaaaaaって何が入るの?
2019/07/14(日) 12:25:09.72ID:cixPwHFXp
そりゃ転記ミスやろ。
コンテクスト違うってエラーが出てるんじゃね?
2019/07/14(日) 12:27:14.57ID:VKB+2jBS0
>>939
TextChangedイベントを確認しましょ
2019/07/14(日) 13:09:01.62ID:1V0xuz/f0
>>941
"aaaaaa" です。


>>940 >>943 
TextChangeイベントも設定されていません。
もともとこのプロジェクトは、VS2010で作ったものです。
現在は、それをVS2017でメンテナンスをしようとしています。

アップグレードに伴う、VS側のバグでしょうかね???
一から作り直すのめんどくさいし・・・あーあー

VS2017で作成した新規プロジェクトでは、Textboxへの値の設定では
当然フリーズしません。
2019/07/14(日) 13:31:47.51ID:TL4T/r3+a
>>944
そもそもtxt_wordの型が書かれてないんだけどTextBox型なの?
デバッグ実行中にフリーズする箇所で「一時停止」したら
コールスタックに実行中のメソッドが出るけどどこでフリーズする?
2019/07/14(日) 13:36:10.50ID:1ykVpntz0
>>944
VS2017のバージョンは、最新(15.9.14)になってる?
947デフォルトの名無しさん (エムゾネ FFba-YtL5)
垢版 |
2019/07/14(日) 13:56:27.70ID:KJvjECGRF
最初の質問観ただけで
面倒臭い人(質問じゃなくて人)だと判る
2019/07/14(日) 14:15:44.45ID:1V0xuz/f0
>>945
間違いなくTextbox型です。

>>946
Version 15.9.14
になっています。
念の為にVSをアップデートしました。
2019/07/14(日) 14:22:56.02ID:1V0xuz/f0
呼び出し元でTextboxに値を入れる分はすぐでした。

呼び出し先のメソッドの中でのデバッグでだけ
遅くなっている様です。

解決できそうです!
2019/07/14(日) 14:25:17.32ID:vFmjWtsga
解決したらどういうことだったか残しといて
2019/07/14(日) 16:50:39.75ID:1V0xuz/f0
原因はわかりませんが、とりあえずスムーズに流れる方法が
わかったのでメモしておきます。

もともと@でしたがAに変えたらフリーズしなくなりました。。。
なぜだろう。。。


入っている文字列ですが正確には

string str_test = "aaa\r\nbbb\r\nccc\r\nddd\r\neee\r\n";

でした。

@
txt_word.Text = str_test.TrimEnd('\r').TrimEnd('\n');

A
txt_word.Text = str_test;
2019/07/14(日) 17:21:41.77ID:eBBABYSj0
末尾の改行消したいなら str_test.TrimEnd('\r', '\n'); か str_test.TrimEnd('\n').TrimEnd('\r'); じゃ?
2019/07/14(日) 17:22:25.76ID:7jVc1wv20
確実に利用者側の問題なのにVS側の不具合を疑う時点でどうかと思う
そもそもフリーズってどんな状況よ
不正確な単語使われて情報も部分的にしか出さないでなんでも解決できると思わないでね
IDE使ってんだからbreakしてステップ実行しなよ
2019/07/14(日) 19:13:36.27ID:REnBzl1eM
俺みたいにおちょくっておくのが正解だと言うのに
2019/07/14(日) 19:24:25.41ID:1V0xuz/f0
>>954
お前ははなから相手にしてない
雑魚が
2019/07/14(日) 20:16:20.63ID:FOkW4A9fr
>>955
>>1 も読めない人はもう来ないでね
2019/07/14(日) 20:31:52.63ID:REnBzl1eM
生ゴミに雑魚とか言われちゃったよ(苦笑)
2019/07/15(月) 00:13:59.24ID:Pf4bLsx9a
アカン質問者なのはわかってたけど豹変面白すぎ
2019/07/15(月) 15:45:33.24ID:RYqQ15uW0
Dapperでクエリを書く時、SetParameterと補間文字列、どっちがいいですか?
SetParameterが普通っぽいんですが、下のように、補間文字列でもそう不便しなさそうなんですが・・・

string sql = $"INSERT INTO table(name, chk) VALUES('{textBox1.Text}', '{checkBox1.Checked}')";
2019/07/15(月) 15:55:18.36ID:/B6zOkBad
>>959
SQLインジェクション
2019/07/15(月) 16:08:29.30ID:0Vwmqj+cM
>>959
もしあなたが職業プログラマで、信頼できない人間がアクセスする可能性のあるソフトウェアの開発に携わったことがあるなら、
今すぐ関係者に連絡してSQLインジェクション脆弱性がないか確認してもらいなさい
誇張ではなくマジで危険
2019/07/15(月) 16:52:51.84ID:BwPtgrfc0
最近自分で私事でサーバー運営の練習してるんだけど、外部からのアタックってけっこうくるのね。大量の謎のアクセスがあって片っ端からURI試されてる。

>>959
ということでセキュリティには絶対気を付けるべき
963デフォルトの名無しさん (エムゾネ FFba-YtL5)
垢版 |
2019/07/15(月) 16:59:54.96ID:3kssHGHNF
アタックに対して堅牢性があっても
糞アクセスのせいでログファイル肥大化して
disk full でシステムダウンとか
DOS攻撃でネットワーク飽和してダウンとか
セキュリティ対策と言っても奥が深い
糞アクセスがあっても安全だからって放置せずに
糞アクセスしてくる相手は片っ端からフィルタで切断した方が良い
2019/07/15(月) 17:28:08.54ID:BwPtgrfc0
とりあえずアタックというものは本当にあるんだ、ということが伝えたかった。
2019/07/15(月) 17:46:03.68ID:eJKhhqkr0
>>962
つ Nikto
先ずはチェックを
2019/07/15(月) 18:08:26.88ID:lZwtcGpud
結構アタックあるよね。アクセスログ見る習慣もつけたほうが良いと思う。
2019/07/15(月) 18:45:14.20ID:AVRTCka/0
ホワイトハウスにクラックするスーパークラッカーが世の中にいるんだよ
なので攻撃されたら絶対防げないからあきらめな。


なのでWEB系の基幹システムの開発だけは現役のころは
すべてさけてきた。

Windowsシステムなら最悪ローカルで被害がすむ
2019/07/15(月) 18:45:44.19ID:l/0rJj1+0
おじいちゃんこんにちは
2019/07/15(月) 18:52:00.43ID:jhuzVcKVM
>>962
SSHくらいやってるんだろうね?
2019/07/15(月) 20:59:32.14ID:BwPtgrfc0
>>965
丁度脆弱性診断の本買って勉強中です、Niktoというのも調べてみます。

>>969
むしろSSHかさくらの管理コンソール以外からのログインの仕方がわかりませぬ。
2019/07/15(月) 21:01:10.84ID:BwPtgrfc0
>>966
ある日を境にアクセス数グラフが爆発的に増えてビックリこきました。アクセスログ見たらそれっぽいURI叩かれまくってて感心してしまった。
2019/07/15(月) 21:32:51.08ID:eJKhhqkr0
>>970
Niktoは脆弱性診断ツール
良く知られている攻撃方法は一通りカバー
しているかと。

日本語の説明はあちこちにあるけど例えばコレとか
https://qiita.com/bezeklik/items/12643654dc0c45f4eb29
2019/07/15(月) 22:05:37.33ID:BwPtgrfc0
>>972
ありがとうございます!
完全にスレチになってしまうのでこの辺にしておきます
2019/07/16(火) 09:21:03.27ID:X0DP0wW10
>>952
つまり、
txt_word.Text = str_test.TrimEnd('\r').TrimEnd('\n');
の右辺の最初の str_test.TrimEnd('\r') の部分で str_test の末尾に '\r' が
無いのでエラーが生じて例外が throw されていたという落ちですかね。
2019/07/16(火) 09:23:45.90ID:X0DP0wW10
>>974
仕様を見てみたらそういうわけでもないようですね。
2019/07/16(火) 09:25:36.76ID:TC9tlVhv0
そもそも例外出たってフリーズはせんだろ
何のためのIDEだ
2019/07/16(火) 09:30:32.77ID:X0DP0wW10
VSのバグだったら楽しいなwww
2019/07/16(火) 11:44:57.75ID:9jUYV4m+0
>>974 >>775
ほんと不思議な事象でした。
tyr catchでかこってもエラーには落ちてきませんでした。
ただ、時間がやたらかかるだけ
2019/07/16(火) 12:01:20.00ID:TC9tlVhv0
例外とエラーと処理に時間がかかるは全部別の事象
そら処理に時間がかかってるところにtry書いたって何の意味もないよ
一番不思議なのはそんな技術力でVSを疑う君だよ
2019/07/16(火) 12:47:20.40ID:i1fbuZ/pM
まあ自分以外を疑うのは初心者あるあるやね
2019/07/16(火) 14:07:27.08ID:cyuVEim50
改行されて文字が見えなくなってて、フリーズしたと思い込んでたんじゃない?
2019/07/16(火) 15:02:04.77ID:p80ojOpj0
画像ファイルを相対アドレスで指定してもデザイナが勝手にカレントディレクトリをWindows直下だと思ってフォルダが無いって言ってるのって何とかならないの?
2019/07/16(火) 15:21:01.19ID:CH30lzXT0
>>980
次スレはよ
2019/07/16(火) 15:37:30.60ID:i1fbuZ/pM
>>983
すまん、うっかりしてたわ
立てたのでよろしく

ふらっと C#,C♯,C#(初心者用) Part144
https://mevius.5ch.net/test/read.cgi/tech/1563258983/
985デフォルトの名無しさん (ワッチョイ 1a61-mVAd)
垢版 |
2019/07/16(火) 16:06:39.66ID:X0DP0wW10
VSにバグが有るだけじゃないんですかいな。
実際、手元でVS 2019で C++ を試していたら、メニュー・エディタが
ハングアップしたりシングルコアでのCPUが100%になって一分以上待たされたり
何回もした。
2019/07/16(火) 16:08:57.60ID:9jUYV4m+0
多分vsのバグだと思う

だけど、このスレッドでは初心者に問題がある、と押し付けるdqnがいるのです。
2019/07/16(火) 16:09:42.20ID:X0DP0wW10
昔からMSはバグが多いことで知られていて、Win95でもすぐにおかしくなっていた。VSだけは割りと安定していたのだが、最近はVSもMS標準品質になっただけかもしれない。
別に Win95 時代じゃなくても、Officeだっておかしくなるし。
ページ番号がずれてめちゃくちゃに成って直せなく成ったりとか、表を編集中にキャレットが別のカラムに勝手に移って何度やっても思ったカラムに入力できないとか、そんなん物凄くあった。
2019/07/16(火) 16:13:10.50ID:X0DP0wW10
>>986
昔のVC++のころのVSは、問題になるような重大バグは気付かなかったんだけど、今のVSはそんな重大バグがあるんだろうか。
遅いことだけは間違いない。自分の環境だと起動に何十秒(1分?)もかかる。
2019/07/16(火) 16:54:27.52ID:9jUYV4m+0
>>988
もっといいマシンかおうぜ
2019/07/16(火) 17:16:52.20ID:X0DP0wW10
>>989
速いマシンっていうが、どの程度のマシンでどの程度の速度で起動する?
5秒以下になるか?
2019/07/16(火) 17:25:07.83ID:HGJeyF2e0
vs2010を2008R2で動かすと高確率で
ハングして閉口したよ
2019/07/16(火) 17:38:23.73ID:SYYZ7oiM0
>>939
こんな再現できないコード貼って他人が解決できるって発想が理解できない
ミニマムコード要求すらせずに相手する方もおかしい
>>982
C#じゃないOSの仕様で、Windows直下に設定したのはお前じゃね
>>984
たておつ
2019/07/16(火) 19:28:02.88ID:CUl4yCEGa
>>984
スレ建て乙
2019/07/16(火) 22:16:31.67ID:9jUYV4m+0
>>990
Corei7-8700CPU 3.20Ghz 3.19Ghz
48GB

G-GEAR eX.computer Gaming Service

ゲーミングマシン使ってるから早い。
2019/07/16(火) 23:05:46.24ID:NtL9T2Il0
なんだよ48GBって。
中途半端に買い足さないで男らしく64GBいけや
2019/07/16(火) 23:24:36.19ID:DnEfEKUpF
>>995
どうでもいい難癖乙
2019/07/16(火) 23:26:05.36ID:9jUYV4m+0
なんくせやな。
動画編集しながら、VS立ち上げながら、ゲームしても余裕っす

もちろんVSごときサクサクっすわ
2019/07/17(水) 01:18:46.85ID:ANbj1oMn0
今どきシングルコアのPCで開発ってある?
5年前のPCでもそんなの無い気がすんだけど
2019/07/17(水) 01:20:25.68ID:fz/PHEHW0
VM上で開発してるのかもしれない
2019/07/17(水) 01:56:35.78ID:rBzTe21k0
ふんっ1000ゲット
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 61日 6時間 28分 29秒
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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