- 1 名前:デフォルトの名無しさん [2010/02/04(木) 22:02:43 ]
- このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。 ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、 ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。 内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。 なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。 >>980を踏んだ人は新スレを建てて下さい。 >>980が無理な場合、話し合って新スレを建てる人を決めて下さい。 ふらっとC#,C♯,C#(初心者用) Part54 pc12.2ch.net/test/read.cgi/tech/1264236247/ 関連スレ C#, C♯, C#相談室 Part55(実質56) pc12.2ch.net/test/read.cgi/tech/1260111240/ WPF(XAML, XBAP, .Net3.5)GUIプログラミング Part5 pc12.2ch.net/test/read.cgi/tech/1261879110/
- 82 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 20:02:13 ]
- >>75
<ContentControl MouseDoubleClick="ContentControl_MouseDoubleClick"> <Image Source="mikumiku.jpg"/> </ContentControl>
- 83 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 20:36:15 ]
- >>80
xdoc.Root.Elements()には、デバッグモードで見ると、 xmltextがそのまま入ってます。 ということは1回ですか? これをタグ別にわけるには、どのようにしたら?
- 84 名前:デフォルトの名無しさん [2010/02/05(金) 20:41:52 ]
- 75です。
>>79 WPFの掲示板は初心者の質問を受けつけてくれないのです。 それでこちらで質問しました。 >>82 xamlのimageに入れて試してみました。 'ContentControl_MouseDoubleClick' の定義が含まれていません、 というエラーとなったのですが、 なにか前もってすることがありますか? よろしくお願いします。
- 85 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 20:48:42 ]
- >>84
文字通りイベント用の関数を作ってないんだろ。 その部分は消して、プロパティウインドウからイベントを選びなおす。
- 86 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 20:50:27 ]
- >>83
まずLINQじゃなくてforeachで普通に表現してみ
- 87 名前:デフォルトの名無しさん [2010/02/05(金) 21:03:40 ]
- >>86
foreachでxmlをどうわけたら? string[] lines = xmltext.Replace("<word>","").Replace("</word>","").Split('\n'); とかですか? それならできます。 foreach (string line in lines) { lists.Add(line); }
- 88 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 21:08:26 ]
- ……。
foreach (var element in xdoc.Root.Elements()) { // この中のコードを書いてみろってこと }
- 89 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 22:14:30 ]
- DataTable.WriteXML で、テーブルに数値型の列があったとして、
XML ファイルの該当箇所を 16 進数表記で出力するコトって出来ますか?
- 90 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 22:30:14 ]
- WriteXmlじゃ無理だな
- 91 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 22:48:01 ]
- >>86
xdoc.Root.Elementsをわける方法がわからないですが、 次のとおりで、項目ごとには分けられます。 string[] lines = element.Replace("<word>","").Replace("</word","").Replace(" ","").Split('>'); foreach (string line in lines) { lists.Add(line); }
- 92 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 22:49:50 ]
- でもこれではLINQはぜんぜん使っていないし、知りたいのはLINQなのですが…。
- 93 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 22:59:09 ]
- まず>>88ができなければLINQでできるようにはなりません
横着しないでやれ
- 94 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:01:02 ]
- …低脳にLINQを使わせるな。
- 95 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:08:25 ]
- その前にXMLから理解すべきでは
- 96 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:09:07 ]
- 首吊って死ぬのが先かな。
- 97 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:11:01 ]
- それ以前に、言われた通りにしないのなら質問しなくてよろしい
- 98 名前:デフォルトの名無しさん mailto:75 [2010/02/05(金) 23:12:45 ]
- >>85
ありがとうございます。 まず、xamlでContentControl MouseDoubleClickをコメントアウトしました。 Imageのプロパティを見ましたが、ContentControlの項目は見つかりません。 なんのイベントを選べばよいですか?
- 99 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:17:17 ]
- 選ぶのはMouseDoubleClickだよ
- 100 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:20:01 ]
- うっほうっほ
- 101 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:22:55 ]
- >>99
ねぇよ 嘘つきばっかだな
- 102 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:28:11 ]
- ContentControlのだよ? Imageの親にした
- 103 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:31:36 ]
- 思うに、Windowに直接Image貼ってるんだろう?
- 104 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:40:05 ]
- >>90
そっか、残念。ありがとうございました。
- 105 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:45:07 ]
- テキストボックスの中にカーソルを表示させないようにするにはどうしたらよいのでしょうか?
- 106 名前:デフォルトの名無しさん mailto:sage [2010/02/05(金) 23:51:08 ]
- りいどおんりい
- 107 名前:デフォルトの名無しさん mailto:75 [2010/02/06(土) 00:35:36 ]
- >>102
75です。 ありました。できました。 ありがとうございます。
- 108 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:38:43 ]
- >>93、97
横着せずにいうとおり91のとおりやってると思いますけど。 で、91でLINQなしでできてしまったです。 それがちがうのなら、方法を教えてください。 で、あらためてLINQだとどう書くんでしょう?
- 109 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:42:18 ]
- >>91でいくらできても意味は無いのよ。
正しく理解するってのが大事なんだから。 教えません。
- 110 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:43:06 ]
- >>108
そうか〜できてしまったか^^ 良かったね 一生そうやってろ
- 111 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:43:09 ]
- キミの仕事だか趣味だかのプログラムが完成しなくてもおれたちにはどうでもいいことなので
自分で努力してください
- 112 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:45:39 ]
- >>109
正しく理解するヒントくらいください。 >>110 そうやってたくないから聞いてるんですけど。
- 113 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:47:02 ]
- ヒントが>>88だろ
もう死ねよ
- 114 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:48:12 ]
- …構ってちゃんをいつまでも相手してなくてよろしい(`・ω・´)
- 115 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:50:35 ]
- >>113
だから、88の回答は91で、 それでできちゃったのではLINQを使う点では間違えているわけだから、 どう間違えているのかって訊いてるんですけど。
- 116 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:52:57 ]
- 始まりはどこからなの?
- 117 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:54:33 ]
- >>116
63
- 118 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:55:42 ]
- >>115
foreach (string line in lines) { じゃなくて foreach (var element in xdoc.Root.Elements()) { で書き始めろって言ってんだよ 会話が成り立たない(´・ω・`)
- 119 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:57:07 ]
- >>118
お前も何マジになってんだ。 こういうのはニヤニヤしてればいいんだよ。
- 120 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 00:58:07 ]
- >>64
名前欄に64って書いとけ
- 121 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:00:18 ]
- >>120
そしてそっこうでDispose()が呼び出される。
- 122 名前:116 mailto:sage [2010/02/06(土) 01:00:50 ]
- >>117
サンクス まあ質問者も回答者もどっちもどっちだな 質問者は問題解決の探索の仕方がまずいし 回答者も無駄にあおりすぎ
- 123 名前:デフォルトの名無しさん [2010/02/06(土) 01:03:12 ]
- XMLは手だしてないのでしらんけど似たような解析がいるHTMLから考えると
よくわからなければtextbox貼り付けて片っ端からToString()すればいいのに とか思うんだけどな
- 124 名前:64 mailto:sage [2010/02/06(土) 01:03:18 ]
- >>118
なるほど。そういうことでしたか。 XDocument xdoc = XDocument.Parse(html); foreach (var element in xdoc.Root.Elements()) { string[] lines = element.Replace("<word>","").Replace("</word","").Replace(" ","").Split('>'); foreach (string line in lines) lists.Add(line); } と書きました。 ただし、これだと、 xdoc.Root.Elements()とhtmlは、同じものが入っているのと、そのElementをわける方法がわからないので、 string[] lines = html.Replace("<word>","").Replace("</word","").Replace(" ","").Split('>'); foreach (string line in lines) lists.Add(line); } と買い手目的は達成してしまいました。 それで、LINQの方法を聞いているわけです。 つまり、xdoc.Root.Elements()をわける方法がわからないのです。
- 125 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:04:27 ]
- もう俺がLinq使った回答教えてやるよ。
var words = xmltext.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries). Where(n => n.Contains("<word>")). Select(n => n.Replace("<word>", String.Empty).Replace("</word>", String.Empty)); こうね。 これでお開き。寝ろ。
- 126 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:05:52 ]
- だから xdoc.Root.Elements()はなんなのか理解しろ
かんがえろ 要素1個しかないだろ? だから1回しか実行されないんだよ?
- 127 名前:64 mailto:sage [2010/02/06(土) 01:06:11 ]
- >>122
なるほど。たしかに探索の仕方はまずい気がします。 どうすればいいんでしょうね。
- 128 名前:64 mailto:sage [2010/02/06(土) 01:07:19 ]
- >>126
要素が1個しかないのはわかりました。 で、wordにわける方法は?
- 129 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:07:56 ]
- >>128
教えませんよフフン
- 130 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:08:06 ]
- >>128
デバッガでプログラムを止めて考えろ。 DOM系のプログラミングはこれに限る。
- 131 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:08:31 ]
- 釣りかも知れんがタフだなあ…。
- 132 名前:デフォルトの名無しさん [2010/02/06(土) 01:10:53 ]
- >>127
まあHTMLの方はとりあえずHTML化すれば外部ツールが 作ったHTMLの構造とかを出してくれるのでわかりやすかったけどな
- 133 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:11:01 ]
- XElement.Elements()で取得できるのはXElementなんだからさらにXElementElements()すればいいだけよ。
XDocument.RootもXElementだからね。
- 134 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:12:35 ]
- ふ、ふん!
あなたに言ったんじゃないわよ! もう寝なさいよ!
- 135 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:13:07 ]
- var使ってるからElements()で何が帰ってきてるかも分かってないと思うよ彼
- 136 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:13:26 ]
- >>133を受けて
ttp://msdn.microsoft.com/ja-jp/library/bb348975.aspx の例を見て考えよう
- 137 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:14:14 ]
- お前ら釣られすぎ
- 138 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:23:43 ]
- msdnにほとんど答えが載ってるからもう来ないだろ…
- 139 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:27:48 ]
- xmlを
<result> <words><word>クワガタ</word></words> <words><word>オオクワガタ</word></words> <words><word>メダロット</word></words> <words><word>ミヤマクワガタ</word></words> <words><word>ヒラタクワガタ</word></words> <words><word>ノコギリクワガタ</word></words> <words><word>パラワン島</word></words> <words><word>ルイスツノヒョウタンクワガタ</word></words> </result> にして、 var query = XElement.Load("XMLFile1.xml").Descendants("words"); foreach (var item in query) Console.WriteLine(item.Element("word").Value); で解決
- 140 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 01:32:12 ]
- >>139
ヒントに見せかけた釣りですね
- 141 名前:64 mailto:sage [2010/02/06(土) 02:44:50 ]
- >>129
なんか昭和のスパルタ教師の香りがするんだけど、 考えれば考えつくとかいったって、考えてとけてたら、こんなとこで聞いてないって。 しかも、自分の方法に迷いがないと思ってるばかときた。 考えろっていって、答えを教えないばかだよ。 1をよめっつーの。
- 142 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 02:52:38 ]
- 煽っても答えませんよ。
- 143 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 02:53:55 ]
- 理解力が足りないのまで俺らのせいにされても困るッスわ…
- 144 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 02:57:42 ]
- 小学生にC#は尚早だぜ。
HSPやってな。
- 145 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 03:03:05 ]
- >>141
馬鹿に教えを請うってプライド大安売りですね
- 146 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 03:08:40 ]
- >>141
教えてもらってから居丈高になった方がよくないか? 利根川さんもそう言っていたよ
- 147 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 03:15:47 ]
- どうせ答えねえクセに白々しいんだよ。
- 148 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 03:24:06 ]
- なんか昔のAPIスレを見ているようなデジャビュを感じる。
- 149 名前:デフォルトの名無しさん [2010/02/06(土) 03:26:18 ]
- >>148
あんまかわらんでしょ 結局他所が用意した機能だから
- 150 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 03:47:58 ]
- >>149
ふーん。(´・ω・`)
- 151 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 04:17:34 ]
- 元々の>>64でresult.Element("word").Valueとか書いてるのに
それをforeachで書けって言われて>>124になるのかさっぱり分からん
- 152 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 07:01:57 ]
- なんでこの程度のネタで一晩中引っ張れるんだ
- 153 名前:デフォルトの名無しさん [2010/02/06(土) 10:15:59 ]
- >>71
レスありがとうございました。テキストボックスをコードで作ってしまう んですね。昨日の書き込みの後も、親ピクチャーの子をテキストボックス にしたりピクチャーに戻したりを繰り返していました。 今はピクチャーに戻して private void textbox1_TextChanged(object sender, EventArgs e) { //PictureBox1のGraphicsオブジェクトを取得 Graphics g = picturebox1.CreateGraphics(); //g.Clear(pictureBox1.BackColor); g.Clear(Color.white); //フォントオブジェクトの作成 Font fnt = new Font("MS UI Gothic", textbox1.Font.Size); //文字列を位置(0,0)、青色で表示 System.Windows.Forms.TextRenderer.DrawText(g, textbox1.Text.Trim(), fnt, new Point(0, 0), textbox1.ForeColor); //リソースを開放する fnt.Dispose(); g.Dispose(); } として、g.Clear(Color.white);でごまかす形になりました。 いろいろ教えていただいたり、コードまで見せてもらえてとても助かって います。
- 154 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 12:10:03 ]
- 質問者は名前欄にレス番いれたらいいんじゃないの?
- 155 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 14:23:12 ]
- >>63
root["words"].ChildNodes
- 156 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 14:30:40 ]
- あまいなw
- 157 名前:デフォルトの名無しさん [2010/02/06(土) 14:53:01 ]
- 再帰ック
- 158 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 15:17:34 ]
- まさか俺以外はコード書いて試してないのか?
- 159 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 15:29:08 ]
- Who are you ?
- 160 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 15:35:58 ]
- >>159
コード書いたあと煽ってた側なんだが… お前らコンパイルできない偽ヒントばかりだすなよw
- 161 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 15:49:46 ]
- e?
- 162 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 16:09:57 ]
- Linqでxml触ったことなかったけどこれでいいのかな?
var query = from result in xdoc.Root.Element("words").Elements("word") select result.Value; 彼流に合わせたんだけどresult.Valueは気に入らない
- 163 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 16:57:36 ]
- <A href="javascript:for(i=0;i=77777;i=i+1){alert(' ・ω・ ');}" onMouseOver="for(i=0;i=77777;i=i+1){alert(' ・ω・ ');}"><h1><b>◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆</b></h1></A>
- 164 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 17:13:56 ]
- <A href="javascript:for(i=0;i=77777;i=i+1){alert(' ・ω・ ');}" onMouseOver="for(i=0;i=77777;i=i+1){alert(' ・ω・ ');}">
<h1><b>◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆■◆</b></h1></A>
- 165 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 21:13:25 ]
- ファイルをドラッグ&ドロップして、そのファイル名を受け取りたいんだけど、リストボックスではうまく行くけど、
他のコントロールだとカーソルの形だけは変わるけど、ファイル名が受け取れません。 DataGridViewでやりたいんですが、これは仕様なんでしょうか?
- 166 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 21:23:19 ]
- カーソルの形がどう変わるんだよ
AllowDropとDragEnter/DragOverとDragDropはどうやってんだよ
- 167 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 21:38:39 ]
- 初心者にはできない仕様です
- 168 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 21:52:32 ]
- >>166
カーソルは十字に変更されるよ。 だからDragEnterは正常に機能している。 メッセージボックスを書いておくとちゃんと表示される。 そのイベントハンドラ内で、e.Effect = DragDropEffects.Copyをしている。 DragDropのイベントハンドラの方にはイベントさえ全然来ない。 AllowDrop=trueにしているけどね。
- 169 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 21:56:17 ]
- で?
- 170 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:19:05 ]
- >>165
テストコード書いて試したけど出来たよ?
- 171 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:23:10 ]
- 自己解決しました。
- 172 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:25:48 ]
- >>165
プロパティWindowでDragDropイベントがちゃんとdataGridView1_DragDrop(例)に登録されてるか確認したか?
- 173 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:26:44 ]
- >>172
は?
- 174 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:27:47 ]
- >>171
お前は誰だ? 質問しといて自己解決の内容を書かないやつが一番たちが悪い 自己解決の内容かけ
- 175 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:31:18 ]
- 事故解決しました。
- 176 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:31:42 ]
- 事故解決しました。
- 177 名前:165 mailto:sage [2010/02/06(土) 22:35:27 ]
- というか>>171は俺じゃないんだけどな。
>>172 もちろんイベントハンドラーは割り当てているよ。 デザイナーが吐いたコードを実際にみてaddされているし。 そもそもイベントが来ないのがおかしいな。
- 178 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:36:19 ]
- なんでそんなにえらそうなの?
- 179 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:37:05 ]
- >>171
しね >>177 家では全く問題ない もう1度まっさらな状態からTESTコード書いてみたら?
- 180 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:40:40 ]
- 俺も問題ないわ
- 181 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:44:00 ]
- 俺も
- 182 名前:デフォルトの名無しさん mailto:sage [2010/02/06(土) 22:44:48 ]
- ↓俺も俺もとかいいから
|

|