[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 11/03 02:41 / Filesize : 281 KB / Number-of Response : 1021
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 00:34:49.34 ID:2YnnBC7F.net]
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。

他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。

内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。

なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
C#に関係の無い話題や荒らしの相手や罵倒レスはやめてください

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

■前スレ
ふらっと C#,C♯,C#(初心者用) Part121
echo.2ch.net/test/read.cgi/tech/1465958068/

■関連スレ
C#, C♯, C#相談室 Part91
echo.2ch.net/test/read.cgi/tech/1467142749/

■コードを貼る場合は↓を使いましょう。
ideone.com/
https://dotnetfiddle.net/

■情報源
https://msdn.microsoft.com/en-us/library/gg145045.aspx
referencesource.microsoft.com/

61 名前:デフォルトの名無しさん mailto:aaaa [2016/07/10(日) 06:12:12.89 ID:wNZnvJob.net]
荒らす位なら、足りない知識でも回答側に回る方がよっぽど良いんだけどなぁ。
開幕からあぼーんだらけだし。
せめて1書き込みに1行はC#のコード入れよう。
yield break;

62 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 07:01:25.43 ID:MDASwAaI.net]
>>59
徳永英明のせいだよな

63 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 07:29:57.13 ID:IkrfKy2g.net]
まぁぶっちゃけ、掲示板に質問書くような奴は一生プログラムなんか自力で作れないからどうでも良いw
出来るようになるのは、自力でググったり本見て答えだせるヤツだけ
回答者は薄々分かってるけど、暇な時にボランティアしてるだけだしね
質問者が狂ったように書いても答えるヤツが減るだけだ

64 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 08:23:00.76 ID:Cd5Emc7t.net]
>掲示板に質問書くような奴は一生プログラムなんか自力で作れない
んなわきゃーない
質問の仕方がおかしくて、指摘しても直せないような人は上達も遅そうだとは思うけど、それでも馬鹿にするようなことじゃない

65 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 08:26:04.32 ID:1U822I3Q.net]
レス番がやけに飛んでるな

66 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 08:39:38.13 ID:k3yu/ZB0.net]
>>60
自分が荒らしだと思っていないからだよ
正しい事の布教に努めていると信じている
それで10年くらい粘着しているの他で見たことがある
理解できないんだから相手にしてはいけない
>>62
何でも同じだけど自分だけで解決できない、ブレークスルーが必要ってことはあるんだよ
俺はこういうところで聞くことはないけどな

67 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 09:14:19.46 ID:vClNR34Z.net]
質問をまとめて書き込んだ直後に自己解決した例が半数以上

68 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2016/07/10(日) 10:37:04.49 ID:2u6Y/RqP.net]
>>62
回答者じゃない癖に偉そうだな
お前のような見下す人間がいるから質問する人間が減る

69 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2016/07/10(日) 11:04:05.42 ID:TnpjEBnW.net]
お前が来てからの方がよほど減ってんだけど
臭い自覚ねえのかよコミケに群がるブタか?



70 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2016/07/10(日) 11:05:21.11 ID:TnpjEBnW.net]
起きたから今から揚げ足取りまくりで粘着してやるぞ
午前3時までな

71 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 11:40:00.78 ID:eiCoffPe.net]
2chの低レベルコーダーには期待してないが万が一って事もあるから取り敢えず質問だけ書いて自分でも調査は継続する
これが2chを使う上での基本姿勢だと思うけど

72 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 11:42:00.36 ID:F56GvMHY.net]
口が悪い奴だ。

73 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 13:35:06.97 ID:Pqw5xvDF.net]
ListViewにデータを追加する場合に、
stackoverflow.com/questions/9951704/add-item-to-listview-control
の例にあるように、
string[] row = { textBox1.Text, textBox2.Text, textBox3.Text };
var listViewItem = new ListViewItem(row);
listView1.Items.Add(listViewItem);
で追加出来ると書いてあるのですが、実際に試すと最初の要素しか追加されません。
このやり方は間違いですか?普通にforループでやる方法なら出来るのですが、
ループ回さずに一気に追加する方法を教えてください。VS2015です。

74 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 13:43:11.17 ID:ks2mzQ2K.net]
>>72
listView1.Items.AddRange(listViewItem);
こうかな

75 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 14:13:23.93 ID:Pqw5xvDF.net]
>>73
レスありがとうございました。
AddRangeだと文法エラーが出ます。

'System.Windows.Forms.ListViewItem' から
'System.Windows.Forms.ListView.ListViewItemCollection' に変換できません

76 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 14:38:28.52 ID:ks2mzQ2K.net]
>>74
あーそこの例は
{ textBox1.Text, textBox2.Text, textBox3.Text }が一項目扱いだな
3つにするにはコレクション作って代入しないとだめだ
https://msdn.microsoft.com/ja-jp/library/1c1wawcw%28v=vs.110%29.aspx
string[]を直接ListViewItem[]にはできないからループさせるしかない

77 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 14:40:38.86 ID:eiCoffPe.net]
そこでLinqですよ

78 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 14:48:39.98 ID:b3VrmKWk.net]
どの辺が直感的なんだよな
AddRangeで入らないもの作った担当者は猛省して欲しい

79 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 14:59:06.38 ID:ks2mzQ2K.net]
>>77
ListViewが1次元のコレクションだと勘違いしていた。ゴメン



80 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 15:12:31.58 ID:Cd5Emc7t.net]
>>72
new ListViewItem(string[]) で作られるのは
string[0] の下にその他の配列要素をサブアイテムとしたListViewItemなので
「そのやり方が間違い」というより、あなたの理解が間違い
(そのページの質問者は「列を3つ持った詳細表示のListViewを作るとき、それぞれの列にサブアイテムを付けてくのめんどくさい。楽なやり方ない?」と聞いてるので、回答は正しい。)

string配列のそれぞれの要素をListViewにListViewItemとして加えるコードをLINQで書くと↓の感じ

string[] row = { textBox1.Text, textBox2.Text, textBox3.Text };

ListViewItem[] items =
 row
 .Select(x => new ListViewItem(x))
 .ToArray();

listView1.Items.AddRange(items);

81 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 16:28:29.06 ID:ZGUPE9KC.net]
WebBrowserに表示したページのリンクをクリックすると、とあるPDFが表示されます
このPDFファイルをローカルフォルダに保存したいのですが行き詰まっています

リンク部のHTMLはこんな感じです
<a onclick="getpdf('frm', 'pdfurl', '_blank'); return false;">...</a>

javascript部はこんな感じです
function getpdf(formname, url, winName){
obj = document.getElementsByName(formName)[0];

obj.method = "POST";
obj.action = url;
obj.target = winName;

obj.submit();
}

試しにpdfurlをコピってIEなどで表示しようとすると「不正なURLです」と怒られます
getpdfメソッドを実行しないと正しいPDFは表示されない仕様のようです

さて、このPDFを手元に保存したいというのが目的なのですが
document.InvokeScript("getpdf", args);
で、表示させるところまでは出来たのですがこの後がわかりません

長文すいません。よろしくお願いします。

82 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 16:43:02.53 ID:wNZnvJob.net]
>>80
ここはC#スレなんで、違うスレで聞いた方が良いよー

83 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 17:46:45.61 ID:Cd5Emc7t.net]
>>81 の言うとおり、スレ違いに見える
…で、よそのスレに行くことになるんだろうけど、なんか気になるので二つほど…

1.
「こんな感じです」というコードじゃなくて、問題となっているコードを、そのまま出すべきじゃないかな?(業務データで問題のある場所があれば他の文字に置換してもらう必要はあるが)
「問題点をまだ認識できていないあなた」が「勝手に変更した」コードって、もとのコードより問題点増えてる気が…

2.
そもそも、そのページを作った人は、そのPDF、利用者にローカルで保存されたくないんじゃないの?
もしそうなら、程度はどうあれ、それ crack じゃんw

( そ ん な の 自 分 で や れ )

普通のスレは、当然、そういうのNG

84 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2016/07/10(日) 18:59:37.43 ID:2u6Y/RqP.net]
こいつやたら偉そうだけどクラックの意味分かってるのか?

85 名前:80 mailto:sage [2016/07/10(日) 19:19:06.49 ID:ZGUPE9KC.net]
>>81
>>82
ありがとうございます
説明が足りずすいませんでした

表示したいPDFとはETC利用明細www.etc-meisai.jp/index.htmlのPDFなのですが
業務上PDF明細を客先にメールで送るというようなことが多々ありまして、これを半自動的にローカルフォルダに保存できないかと
考えたのです
もちろんIEなどに表示させたPDFを手動でダウンロードするだけならダウンロードボタンをクリックすれば誰でもできるのですが
車両番号やら日付やら走行選択などが煩わしいので・・・

一応該当のjavascriptを画像で載せておきますとこんな感じです
iup.2ch-library.com/i/i1674529-1468142392.png
iup.2ch-library.com/i/i1674528-1468142350.png
一枚目の「証明書PDF」をクリックするとブラウザの別タブでPDFが表示されます

C#のコードはこうなってます
string[] args = { "false", "hakkoMeisai", "frm", argUrl, "_self"};
doc.InvokeScript("goOutput", args);

ここまではWebBrowserコントロールを使って自前のフォームに表示することは出来たのですが
最後のダウンロードで躓いております

当然PDFのURLはHTMLのソースもしくはPDFを表示したアドアレスバーから取得できるのですが
downloadClient.DownloadFileAsync(new Uri(pdfUrl + ".pdf"), folder + FileName);
などとしてもダウンロードは出来ません(保存されるのはエラー画面のHTMLです)

端的に申しますと「現在WebBrowserコントロールに表示されているPDFをファイルとしてローカルに保存したい」
ということなのですがどなたかご教示いただけませんでしょうか

86 名前:名無しさん@そうだ選挙に行こう! Go to vote! mailto:sage [2016/07/10(日) 19:33:06.18 ID:GVug6dOQ.net]
>>84
似た様な事例はあったけど
bbs.wankuma.com/index.cgi?mode=al2&namber=51490&KLOG=86
要はURLにはPDFの実体がないから表示されているPDFのデータをブラウザキャッシュなどから取りだす方法じゃないと無理みたい

87 名前:80 mailto:sage [2016/07/10(日) 20:02:53.74 ID:ZGUPE9KC.net]
>>85
ありがとうございます
目の前にPDFが表示されているのにそれを取得出来ないのはなんとももどかしいです
確かにURLの先にはPDFの実態がないようですがフォーム上には表示されているのですから
webBrowserの中には実態があるはずかと思うのですが・・・

しかし、この実態データを保存云々するのはadobe readerの領分になるのでしょうか
さすがにadobe readerのプラグイン?をC#から操作するのは難しそうですね

因みに当方環境ではIEキャッシュには保存されず、毎回読み込んでいるようです
インストール環境によってはエラーだらけのアプリになりそうで躊躇します

88 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 20:05:40.08 ID:Cd5Emc7t.net]
>>84
俺ETC使わないんで試せないけど

string address = "www.etc-meisai.jp/" + 【1枚目画像のgoOutputの第4引数の文字列】
string fileName = 【ダウンロードファイルのパス】

として

WebClietnt.DownloadFile(address, fileName);

では、ダメなの?

…あと、「jsessionid」の値は、黒塗りしといてくれる方が良かった…
(これだけで、すぐ何かがあるというわけではないと思うが)

89 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 20:19:36.73 ID:8AqR9DEp.net]
>>80
> 試しにpdfurlをコピってIEなどで表示しようとすると「不正なURLです」と怒られます
> getpdfメソッドを実行しないと正しいPDFは表示されない仕様のようです
そりゃそうだ。それは"GET"だ。
"POST"しれ。



90 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 20:27:44.56 ID:Cd5Emc7t.net]
あ、しまった
submitOpenPage() でPOSTしてるってことは、POSTデータがないとダメか…
(POSTデータの中にトークンがあるかも)
結局、スレチみたい…(C#よりも、htmlやjavascriptの知識が必要)

あと、>>80 がとてもいい人っぽいので、ついレスをしてしまってるが
顧客の個人情報に関わるデータだから、地道に、自分だけでやってもらった方がいいような…

91 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 21:00:46.12 ID:9upSpmGb.net]
<form enctype="multipart/form-data" method="POST" action="hoge.php">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
<input type="file" name="datFile" />
<input type="submit" name="sb" value="変換する" />
</form>

このようなフォームがあって、C#からデータ送信を行う場合どうすればいいですか?
WebClient#UploadFileだと出来ません
WebClient#UploadDataでも無理そうです

92 名前:80 mailto:sage [2016/07/10(日) 21:12:29.79 ID:ZGUPE9KC.net]
>>87
試してみましたがやはりダメでした
デバッグモードでURLも確認しましたが間違いでもなさそうです
addaress="https://www2.etc-meisai.jp/etc/R;jsessionid=hoge?funccode=1032000000&nextfunc=1032600000"

>>88
すいません>>80に書いたjavascriptのメソッド名などは説明のため自分が適当に付けたものです
正しくは>>84の様に
doc.InvokeScript("goOutput", args);
と、goOutput()を実行しています

>>89
当方javascriptの知識があまりないものでPOSTの意味も分かっておりません
ETC側のサーバが直リンでPDFを表示させない仕様から察するに
>POSTデータの中にトークンがある
がヒントのようですね


ちょっとjavascriptの勉強をしてきます
ふと思ったのですが
submitOpenPage()で
obj.target="C:\"
obj.submit();
したらターゲットがブラウザではなくファイルになったりしないのか・・・
あぁ・・甚だスレ違いですね、申し訳ない、消えます
ダラダラと長文ばかりすいませんでした
お付き合いありがとうございました

93 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 21:27:01.26 ID:eiCoffPe.net]
HTMLとかJavaScriptの構造を調べるよりHTTPリクエスト・レスポンスを覗き見して何をやり取りすればいいのか調べる方が早いよ

94 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 21:31:11.50 ID:Cd5Emc7t.net]
>>91
あんまり力になれなくてごめん
でも、取得したHTMLを見てPOSTで渡されるデータがどこで設定されてるかを調べて
それをRegexpとか使いながら収集してPOSTデータを作って
サーバーにリクエストすれば、自分の欲しいデータを返してくれるはず

95 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 21:52:22.66 ID:9upSpmGb.net]
>>92
ファイルのみ、テキストパラメータのみだとggったら出てくるんですが、両方一緒にする方法がどこにもありません

96 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 22:09:54.79 ID:Cd5Emc7t.net]
>>90
ついさっき間違えたとこなので、恥ずかしながらレスしますが
POSTデータを送るようになっているので、
WebClient.UploadFile() も WebClient.UploadData() も使えません。

POSTデータを送る場合は

対象URL → string url
自分で作ったPOSTデータ → System.Collections.Specialized.NameValueCollection postData

として

WebClient.UploadValues(url, postData)
 ※戻り値はサーバーから送られるデータ(byte[])

で、送信できるはずです。

97 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 22:15:21.71 ID:Cd5Emc7t.net]
>>94
C#プログラムからPOSTデータを送る方法はC#の話題と言えるけど、
送信するPOSTデータの収集元の探し方はC#関係ないので、勘弁してほしいかな…

98 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 22:36:31.13 ID:9upSpmGb.net]
>>96
C#プログラムから送る方法です
様々な送信クラスがありますが、どのクラスが最適でしょうか

99 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 22:42:05.28 ID:Cd5Emc7t.net]
>>97
ごめん。「どのクラスが最適か」は分からない。
さっき書いた >>95 の方法ではダメだった?



100 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 22:59:33.31 ID:9upSpmGb.net]
ChromeのNetWorkタブで確認しても、ファイルパラメーターにファイル名しかないんです
ファイル名だけ送っているんですか?

101 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 23:00:50.56 ID:9upSpmGb.net]
>>98
<input type="file" name="datFile" />に対応できません

102 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 23:05:18.02 ID:AVHDFEXv.net]
>>94
「multipart/form-data c#」でググれば出てくるぞ。

103 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 23:08:29.88 ID:AVHDFEXv.net]
と、WebClientではファイルと他のフィールドの同時送信は出来ず、
HttpWebRequestとHttpWebResponseを使った方法でなら出来るらしい。

104 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 23:16:43.85 ID:9upSpmGb.net]
>>102
HttpClientも無理ですか?
HttpWebRequestは面倒らしいんですが

105 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 23:22:29.73 ID:Cd5Emc7t.net]
>>99
WebClientが送れるPOSTデータは文字列のみなのか…
(System.Collections.Specialized.NameValueCollection は、{文字列 : 文字列} のコレクションだった…)

ごめんなさい…

106 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 23:39:36.96 ID:Cd5Emc7t.net]
>>103
間違ったこと言ってた人間がこんなこと言うのも何だけど、聞く前に自分で試してないの?

107 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 23:52:04.51 ID:9upSpmGb.net]
HttpWebRequestを試してみました
結果が何も返って来ませんでした
サイトはここです
256gears.net/dat2html/

108 名前:デフォルトの名無しさん mailto:sage [2016/07/10(日) 23:57:38.78 ID:AVHDFEXv.net]
>>103
ヒント与えてるんだから、少しは自分でググってみたらどうか。
「multipart/form-data httpclient c#」で調べたら、MultipartFormDataContentクラスを使うのが分かるはず。

109 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 00:17:13.88 ID:4GM4iOoq.net]
>>107
MultipartFormDataContentだとファイルしか追加できません
でもFormUrlEncodedContentだと文字列しか設定できません



110 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 00:31:28.42 ID:4GM4iOoq.net]
Host、Origin、リファラが必須だったみたいです
何故だろう

111 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 00:31:34.85 ID:wdnMFETA.net]
>>108
MultipartFormDataContentがファイルのみってのは勘違いじゃないかい。

112 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 00:33:39.73 ID:wdnMFETA.net]
MultipartFormDataContent.Add()で色々なContentを入れられる。

113 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 00:34:58.77 ID:4GM4iOoq.net]
>>111
色々出来るクラスだったんですね
今回はリファラとかすればファイルのみでいけました

114 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 00:41:28.92 ID:wdnMFETA.net]
   ヽ(・ω・)/ ズコー
   \( \ノ
 、ハ,、  ̄

115 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 03:46:56.99 ID:sXHA9YNX.net]
>>91
pdfのurlわかったとしても多分ログイン状態示すクッキーも送信しないとダメだと思うぞ

116 名前:80 mailto:sage [2016/07/11(月) 08:14:47.89 ID:043wfk/j.net]
できたー!
POSTの意味がやっとわかりました
fiddlerで見本を見ながら言われたとおりRegexで文字列切ったり貼ったりして
File.WriteAllBytesでローカルに保存できました
ありがとうございました!

117 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 09:06:15.80 ID:lp/0+wEk.net]
Visual C#以外でC#のプログラム作れる環境あります?
ただしOSはWindowsで

118 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 09:13:30.82 ID:TgVUcihl.net]
メモ帳

119 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 09:33:07.81 ID:u728scIS.net]
SharpDevelop



120 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 12:04:00.83 ID:A1dX01u6.net]
>>116
【消しゴム】MONOを使ってみるスレ4【じゃない】
echo.2ch.net/test/read.cgi/tech/1329023778/
特に理由もないのにVisual Studio以外の選択をする気なら止めとけ

121 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 12:09:20.62 ID:lp/0+wEk.net]
>>119
理由は?

122 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 13:24:00.07 ID:CD5KC7jl.net]
VSCodeとかProjectRiderとかが現実的な選択
宗教的な問題ならOmniSharpとかつかってVimやEmacsを使うのもワンチャンある

ただ、どれもまだ資料不足、機能不足は感じる
VSを入れるのが苦しいWinタブとか以外ではおとなしくVisualStudio選ぶべし

123 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 13:26:18.38 ID:dXiH2hED.net]
>>116
意図は?
コード書いて実行するなら、
エディタはなんでもいいけど?

124 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 17:35:33.15 ID:xHAjG3pN.net]
>>122
期限が切れた

125 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 18:58:03.46 ID:7UeJEDYr.net]
>>123
今使っているビジュアルスタジオのバージョンとエディションを書いてね

126 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 2 ]
[ここ壊れてます]

127 名前:0:17:23.39 ID:dXiH2hED.net mailto: >>123
それ(体験版の期限切れ?)だけが理由なら、最新のVisual StudioでExpressなりCommunityなりを選んだほうが良いね。

フリー系に移りたいなら、.net core入れてVSCodeで書くのもアリだとは思うけど。
[]
[ここ壊れてます]

128 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 23:26:16.96 ID:MJsMJlaT.net]
c#でLinuxでguiアプリ組みたいとしたら何使うの?

129 名前:デフォルトの名無しさん mailto:sage [2016/07/11(月) 23:56:45.63 ID:RFLETvWG.net]
HTML5 + ASP.NET MVC
Linuxネイティブとか労力をドブに捨てるようなもんだろ



130 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 03:47:53.74 ID:t2WluLR+.net]
CADを作れるのけ?

131 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 05:24:34.95 ID:Oq9fzlNs.net]
List<string> names = new List<string>();
foreach (var f in files)
{
  names.Add(Path.GetFileName(f));
}

これをラムダ式のメソッド形式で書くとどうなりますか?

132 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 06:06:41.38 ID:1XJMTIuH.net]
files.Selectが使えるのならvar names = files.Select(f => Path.GetFileName(f)).ToList();

133 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 06:10:05.28 ID:Lsg7VIwn.net]
「ラムダ式」じゃないけど
files.Select(Path.GetFileName).ToList()

134 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 07:01:40.97 ID:wlZBlRRc.net]
>>130
>>131
質問者じゃないけど、List<string>型とか定義しなくていいの?

135 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 07:03:35.14 ID:Oq9fzlNs.net]
そんな単純にかけるんだ
f=>new {Path.GetFileName(f)}
こうやっててなんか匿名が無効だとかよくわからないエラーが出て悩んでました
ありがとう

136 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 07:06:04.33 ID:Av8CMSTk.net]
>>128
JavaScriptで頑張ることになるけど普通に作れるだろ
描画はCanvasかSVGを使えばOKで、WinFormsやWPFなんかより遥かにパフォーマンスもいいぞ

137 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 08:03:53.75 ID:nPXIKoWj.net]
普通Linuxのアプリって何で作るの?
java?

138 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 08:05:01.12 ID:nPXIKoWj.net]
c#の資産を使いたいわけですよ

139 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 09:12:35.11 ID:EHHDcNb4.net]
>>135
普通はそんなもん作らないよ
Linuxデスクトップなんか事実上シェア0なんだから



140 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 15:29:38.16 ID:EclWBfi5.net]
そういうことにしないと精神の安定性が崩れる人か

141 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 17:47:11.18 ID:4PhipMPX.net]
DataGridViewでの操作について教えてください。


DataGridViewのNameをDGVで作成し列のNameはColunm1にしてます
Labelも作成しNameはLabel1です
Colunm1にはLoad時に複数行に数値を読み込むようにしていてその合計値をLabel1に表示するようにしてます
ユーザーがColunm1の行の数値を変更した場合の合計値をLabel1に表示させたいのです
ユーザーが入力終了後にLabel1へ即反映させる良い方法はありませんでしょうか?

142 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 18:11:01.18 ID:sNZqT3ZR.net]
>>139
CellValueChanged のイベントハンドラを作って、その中で

引数で渡される e の ColumnIndex プロパティで変更された列番号を取得

その列が「Column1」の列番号と一致してたら、合計値計算のメソッド実行

…という流れで、できそうに思う

143 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 20:26:50.27 ID:1wC3EAns.net]
過充電を防ぐためにパソコンの充電が完了したら通知するプログラムを作りたいです。
タスクスケジューラで登録とい考えもありますが時間で発動するようにしか設定できないので、
C#でそういったプログラムを作れたらと思っています。またフリーソフトで何個かそういうのがあるのは知っていますが
プログラミング勉強

144 名前:フためどうにかC#で作りたいのでその方法について教えて下さい。
充電量を知るクラスとかはありますが、ネックは充電が完了したときに通知する仕組みで、そこがどうしても方法が分かりません。
[]
[ここ壊れてます]

145 名前:デフォルトの名無しさん [2016/07/12(火) 20:51:42.79 ID:CgeREjPy.net]
勉強のために考えるんじゃねえのか

146 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:00:39.97 ID:5gnI1m0l.net]
>>141
どんな通知をしたいんだよ?

147 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:01:42.85 ID:1wC3EAns.net]
>>143
簡単なのでいいですね。
メッセージボックスでいいです。

148 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:07:57.33 ID:yczmIaje.net]
>>141
タイマーのイベント入れてチェックして充電完了状態になったらメッセージ出して終了
イベントが用意されてなくてステータスがチェックできるものはみんなこれで
>フリーソフトで何個かそういうのがあるのは知っていますが
それならC++などでやる方法はあるのだから、まずそれを調べる
好きなやり方でどうぞ

149 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:10:42.80 ID:1wC3EAns.net]
>>145
常にプログラム起動しておかないとダメですか?



150 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:11:37.81 ID:qWktBhYD.net]
> メッセージボックスでいいです。

ネックなのにもう解決かよ。はえーな。

151 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:13:09.02 ID:yczmIaje.net]
>>146
そのフリーソフトは起動させずにチェックできるの?
だったらそっちをまず調べてみて

152 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:18:53.87 ID:1wC3EAns.net]
タスクスケジューラにOS起動時に開くようにしておいて大丈夫ですか?
自作のプログラムだから悪い影響が起きないか心配です。
それにアプリケーションではなくてバックグラウンドで動くプログラムにしたいのですが…
アプリケーションだとタスクバーに表示されてなんか不格好なんで…

153 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:21:19.87 ID:BdiyHc8s.net]
1回だけチェックして終了するプログラムを10分ごとに起動すれば?

154 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:23:03.89 ID:3Y9uDjf6.net]
>>149
アプリケーションの定義を調べてこい

155 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:23:18.71 ID:qWktBhYD.net]
バックグラウンド・・・またウイルス君か。

156 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:23:33.59 ID:yczmIaje.net]
>>149
タスクバーに表示しないようにフォームの設定はできる
フォームの設定確認して

157 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:26:02.30 ID:1wC3EAns.net]
>>153
ありがとうございます。
出来そうですね。

158 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:30:43.58 ID:1wC3EAns.net]
>>150
それだと負担もなさそうですね。ありがとうございます。

159 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:31:06.46 ID:dhHtPSnn.net]
>>142
まったくだな
こいつガチでどういう脳ミソしてんだろ?



160 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:46:43.61 ID:sNZqT3ZR.net]
素直な人に、人格批判はどうかなぁ…
(生意気な人だと「やられてもしょうがない」と思うことはあるけど)

161 名前:デフォルトの名無しさん mailto:sage [2016/07/12(火) 21:58:28.00 ID:TClQ2J2l.net]
C#の最大の欠点は波カッコがある事だと思うのですがどうでしょうか?
あのふにゃっとした情けない感じがプログラマの気力を奪います






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<281KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef