WPF(XAML, XBAP, .Net ..
175:デフォルトの名無しさん
10/01/24 23:28:21
・・・環境にもよるんだろうけど作るだけなら吉里吉里でも
使えばよかろうに
176:デフォルトの名無しさん
10/01/25 00:02:01
でもADVみたいなのにWPFはありだと思うけどなぁ。
UIかっこよくしてなんぼって感じもするし。
177:デフォルトの名無しさん
10/01/25 00:34:22
>>174
やれるとしても当分先だと思いますが、これは確かに面白そうですよね。
たとえ今回の件にそぐわないとしても、近いうちにWPFには手をつけてみようかなーと思い始めてきました。
数値計算とかばかりやってきた身としては、もう少し普及して間口が広くなってほしいってのも本音ですけどね……
>>175
ADVみたいなものって説明が悪かったですね。
雰囲気としてはそれっぽいものではあるのですが、某レトロゲームのシステムを踏襲+拡張したものなので、
簡易的なものじゃちょっとまかなえないんです。分かりにくくてすみません。
178:デフォルトの名無しさん
10/01/25 02:21:15
WPFと吉里吉里とで作れるゲームの幅は変わらないと思うよ
179:デフォルトの名無しさん
10/01/25 03:55:47
吉里吉里はJavaScriptライクな言語TJS2の実行環境+クラスライブラリといった体裁だから、やろうとおもえば結構がっつり組めるよ
でもWPF製のゲームも見てみたいから頑張れ
180:デフォルトの名無しさん
10/01/25 15:07:56
>>171
こういうの見るとモチベーションが上がるな。
上がって何をするかというと、2chとMSDNを往来することなのだが。
181:デフォルトの名無しさん
10/01/25 15:14:07
こういうのは早いのになんでDrawingContextは遅いの?
もっと早く線描けないの?
182:デフォルトの名無しさん
10/01/25 15:27:21
>>181
処理が違うから?
大量の色情報に対して同じ処理を高速にやってるだけだし
上画像のピクセルのアルファ値を高速に変えればできる処理なんで
GPUのもっとも得意とするところじゃん
DrawingContextで描画するような内容ってピクセルのアルファ値かえるだけのような
話じゃないしね
183:デフォルトの名無しさん
10/01/25 16:27:31
c#でも画像の合成表示ならできたな
ちらつきとか抑える方法はよくわからんけど
サンプルソース居る?
というか配布する際どれを渡せばいいんだろうw
.netのソースって開発環境のパスが埋もれてるとか聞いたけど
184:デフォルトの名無しさん
10/01/25 16:35:33
*.Cs とか *.xaml とかでいいんじゃね?
185:デフォルトの名無しさん
10/01/25 16:44:34
URLリンク(uproda.2ch-library.com)
pass 無し
formにpicturebox x1とbutton x3とtimer x1を貼り付けてイベントハンドラを
割り当ててくれれば動くと思うよ
186:デフォルトの名無しさん
10/01/25 17:19:21
あと最近いじっててこんなのもできた
URLリンク(uproda.2ch-library.com)
FormのPaitイベントでDrawLineにArrowAnchor指定して物なんだけど
別の機能をちょっと足せばグラデーション+AntiAliasで描ける
187:デフォルトの名無しさん
10/01/25 17:27:00
なるほど
188:デフォルトの名無しさん
10/01/25 18:38:03
デバッガでエラーが起きた場所が分からなくてつらい
189:デフォルトの名無しさん
10/01/25 19:47:44
>>185
スレチ
190:デフォルトの名無しさん
10/01/25 20:39:07
遅くなってしまい申し訳ありません。168その他です。
昨日はくだらない質問に対していろいろとありがとうございました。
氷点下の世界を旅して、思い切ってWPFの本を買いに行ってみたのですが、取り扱ってる店が1件もありませんでした……
佐川のお兄さんに運んで貰おうと思います。
>>178,179
吉里吉里ってそこまで高性能だったんですね。
あまり使う機会もありませんし、ハッシュは配列にキャストしてから〜ってのがうざったくて放置してました。認識改めます。
191:デフォルトの名無しさん
10/01/25 23:07:44
むしろWPFを使いこなせてないから同レベルくらいに見えるんだろう
それが悪いというんじゃなく、それくらい習熟するのは時間がかかる
192:デフォルトの名無しさん
10/01/26 00:14:08
ほとんどのノートPCで使われてるSynapticsのタッチパッドドライバがWPFと相性悪いらしく、
ListBoxほか大多数のScrollViewer系のコントロールで
パッドのフチを使ったスクロールができず困っていたのだけど、
今年に入ってSynapticsがScrybeというツールのCTPを公開し
その中に最新のタッチパッドドライバ15.0.0.1が含まれていて、
インストールしたところWPFアプリでもスクロールできるようになった!
URLリンク(www.uscrybe.com)
PCメーカーのサポートページから入手できるタッチパッドドライバは大抵古いバージョンなので
WPFのスクロールで困ってる人はこっちをインストールしてみてくれ
以上チラシの裏でした
193:デフォルトの名無しさん
10/01/26 02:49:31
>>191
つまりWPFのほうがより高度なものが作れるってこと?
194:デフォルトの名無しさん
10/01/26 08:05:08
>>171の例1つとっても、画像使うか既定プリセットしかないきりきりより、
自分でHLSL書けるWPFのほうが高度だよ。サンプラーだって上限まで使えるしね。
ていうか、制御するコードにしてもVSとC#使えるんだから、そこらの簡易言語じゃ
勝負にならんでしょ。覚えることは多いけどね。
195:デフォルトの名無しさん
10/01/26 08:21:32
綺麗なのだけじゃなく、スピード重視のローレベルな描画メソッド充実させてほしいな
そしたらもっと裾野広がるのに
196:デフォルトの名無しさん
10/01/26 09:36:54
どっちにしてもWPF使ってツクールみたいなの作るはめになるんだと思うけどな。
べたがきだと使い回しきかんだろうし。
197:デフォルトの名無しさん
10/01/26 09:49:21
>>196
ツクールを作ってた人が楽になるだけだよね
後はツクールを使ってた人が高度な実装知識無しで組めるようになるので
頑張ってツクールが担当してたエリアまで食い込んでくるかも
windows ≒ IE
XAML ≒ HTML
C# ≒ Javascript
こんな感じじゃない?
198:デフォルトの名無しさん
10/01/26 09:50:21
windows ≒ IE
これより
VM ≒ IE
か
199:デフォルトの名無しさん
10/01/26 10:14:38
Imageに画像のセンタリングをやめさせる方法はありますか?
200:デフォルトの名無しさん
10/01/26 10:19:40
自己解決
VerticalAlignment, HorizontalAlignment
失礼しました
201:デフォルトの名無しさん
10/01/26 20:42:54
パラメータに複数のエレメントを渡したい時はどのようにすればいいのでしょうか?
例
<Button CommandParameter="ここで同xaml内にある複数のエレメントを渡したい"/>
202:デフォルトの名無しさん
10/01/26 21:49:28
>>201
こんな感じのデータクラスを作って
public class Hoge {
public int ID { get; set; }
public string Data { get; set; }
}
XAMLでHogeのアセンブリを参照
<Window x:Class="WpfApplication1.Window1"
xmlns:d="clr-namespace:WpfApplication1"
ほいさっさ
<Button ...
<ButtonBase.Content>Ok</ButtonBase.Content>
<ButtonBase.CommandParameter>
<d:Hoge ID="1" Data="AAAAAAAA"></d:Hoge>
</ButtonBase.CommandParameter>
</Button>
203:デフォルトの名無しさん
10/01/26 21:53:48
>>202
おぉ!これは素晴らしい!
ありがとう!
204:デフォルトの名無しさん
10/01/26 22:47:28
補足、作法にのっとるなら依存関係プロパティ
public class Hoge : DependencyObject {
public DependencyProperty IDProperty = DependencyProperty.Register("ID", typeof(int), typeof(Hoge));
public DependencyProperty DataProperty = DependencyProperty.Register("Data", typeof(string), typeof(Hoge));
public int ID {
get { return (int)this.GetValue(IDProperty); }
set { this.SetValue(IDProperty, value); }
}
public string Data {
get { return (string)this.GetValue(DataProperty); }
set { this.SetValue(DataProperty, value); }
}}
これでBindingが使えるようになる。
<d:Hoge ID="0" Data="{Binding Source=button1, XPath=Content}"/>
205:デフォルトの名無しさん
10/01/26 22:49:49
>>204
おぉぉ、なるほど!
Dependency関係がよくわからなかったけどこういう風に使うのか!
また一つ勉強になしました。
ありがとう!
206:デフォルトの名無しさん
10/01/27 10:21:45
そういえばGyaOがヤフーに行ってから動画配信がSilverLight使ってるんだが
あんなに重いものかね?
プログラム作る上でネットブックをスペックの下限の指標にしてるんだが
動画配信中はその他ウインドウのReDrawすらままならないんだが
207:デフォルトの名無しさん
10/01/27 10:32:39
OSを
書け
208:デフォルトの名無しさん
10/01/27 10:51:43
VisualStudio2008ProSP1(Silverlight3 Tools for VS2008SP1 -JPN導入済、OS:XP)で、
CompositeApplicationGuidance-Oct2009の以下のクイックスタート用ソリューションの
プロジェクトのプロパティや、Resources.resxを開こうとすると、必ずVisualStudioが強制終了します。
(エラーメッセージやダイアログが一切表示されず突然落ちます。)
同じ現象にあった方や対処法をご存知の方、いらっしゃいませんか?
強制終了するソリューション(Desktop only - Open QS)
・Directory Lookup Modularity QuickStart
・View Injection QuickStart
強制終了せずプロジェクトのプロパティを表示できるソリューション
・Commanding QuickStart
・View Discovery QuickStart
・Hello World QuickStart
・Configuration Modularity QuickStart
・Commanding QuickStart
209:デフォルトの名無しさん
10/01/27 11:02:35
>>208です
プロジェクト内にResources.resxがないことが原因のようです。
お騒がせしました。
210:デフォルトの名無しさん
10/01/27 14:29:15
WPFでWindowが閉じられる原因ってどうやったらわかりますか?
WinFormsだとStackTrace使ったりFormClosingEventArgsにCloseReasonが
あったんだけど、WPFでどうやったらいいか分からない
211:デフォルトの名無しさん
10/01/27 14:38:53
URLリンク(social.msdn.microsoft.com)
212:デフォルトの名無しさん
10/01/27 14:51:29
WndProc使うしか無いのか…
ありがと
213:デフォルトの名無しさん
10/01/27 20:47:45
ChildFormのthis.DialogResultはViewに対する操作だからView側で処理して良いのかな?
それともICommand等でバインドしてViewのコントロールをViewModelに渡すのが正しい作法?
214:デフォルトの名無しさん
10/01/27 20:48:27
×ChildForm
○ChildWindow
215:デフォルトの名無しさん
10/01/28 12:04:19
Modelを触らない操作だからViewでOK
216:デフォルトの名無しさん
10/01/28 21:34:09
同一ソリューション内の他のプロジェクトをclr-namespaceを使ってXAML内で参照すると"CLR名前空間が定義されていません"と警告が出ます。
コンパイルOK、実行も何も問題ないのでこの警告をやめさせたいのですが何か方法はありますか?
217:デフォルトの名無しさん
10/01/28 23:37:42
WPFでURLリンク(daisuke-watanabe.com)みたいなローディングの画面は簡単に作れますか?
ってぐぐったらでてきたわ。
おまえらは自作で作れたか?
218:デフォルトの名無しさん
10/01/28 23:41:06
ラスターイメージ使ったら負けだろ
それくらいベクトルで描けよ
219:デフォルトの名無しさん
10/01/29 10:08:13
>>217
WPFでそういうことをやろうとも思わなかったけど
DirectXでやれたようなことがむき出しになってるので
できないことはないだろうな
というかWPF使わなくてもVC#でも可能なレベルだろ
個人的にはそのアニメーションすらCPUパワーの無駄とか
思ってしまう
220:デフォルトの名無しさん
10/01/29 11:21:42
URLリンク(www.dotup.org)
こんなんでいいだろ
221:デフォルトの名無しさん
10/01/30 00:44:46
>>220
わたし女子中学生だけどそれはないわ
222:デフォルトの名無しさん
10/01/30 10:23:14
>>220
あたし女子小学生だけどそれはないね
223:デフォルトの名無しさん
10/01/30 10:26:29
ぼく女子高生だけどそれはない
224:デフォルトの名無しさん
10/01/30 10:43:06
男子相撲部だけどごっつあんです
225:デフォルトの名無しさん
10/01/30 13:20:27
URLリンク(www.dotup.org)
わがままなおっさんたちだな
226:デフォルトの名無しさん
10/02/02 13:45:51
MVVMって流行だけどさ、
例えば、読み込むModelが複雑かつ長大な入れ子構造になっている様なとき、
ViewModelを作るコーディング時間と、実行時のコストって大変なものになると思うけど、
それでも分離しなくてはならないの?
227:デフォルトの名無しさん
10/02/02 14:05:59
>>226
テストによる品質保持にかかるコストがそれらを上回るなら。
228:デフォルトの名無しさん
10/02/02 14:19:23
ModelがINotifyPropertyChangedをしっかり実装してるなら、
そのままか同型のコピーをViewModelやViewに引き回しても問題ない。
229:デフォルトの名無しさん
10/02/02 15:40:50
最近はそれを見越して始めから依存関係プロパティ付けて実装することが多いな・・・
230:デフォルトの名無しさん
10/02/02 22:04:52
WPFはまだ仕事では使ってないけどみんなはどう?
231:デフォルトの名無しさん
10/02/02 22:12:19
当分縁がなさそう。
クライアントアプリを開発する案件がそもそも無いっす。
232:デフォルトの名無しさん
10/02/04 01:28:18
クライアントアプリを開発する人に聞いてるんだと思うよ
233:デフォルトの名無しさん
10/02/04 06:35:44
そういう人が居ないんじゃない?
234:デフォルトの名無しさん
10/02/04 07:04:51
よく”まだ”使ってませんって聞くけどいつになったら使う日が来るんですか?
235:デフォルトの名無しさん
10/02/04 08:21:35
VS2010、.NET4のbetaがとれたくらいか、
VS2010SP1、.NET4.5がでるころ
236:デフォルトの名無しさん
10/02/04 08:24:51
Win2kが根絶されるまでは無理ぽ
237:デフォルトの名無しさん
10/02/04 13:34:40
タブページとかXPで表示するとひどい目に遭うけどね
238:デフォルトの名無しさん
10/02/04 20:00:09
NT6が天下を取る頃
239:デフォルトの名無しさん
10/02/05 01:12:51
楽だから選択権があれば使ってるよ
でも重いから客には嫌われてるみたい
240:デフォルトの名無しさん
10/02/05 02:22:05
directx9が満足に動かないビジネス機じゃ重いかもな
241:デフォルトの名無しさん
10/02/05 07:52:21
・・ということは私を含めみんな趣味レベルでWPFやってるってことか・・・。
主流になってくれとまでは言わんが、日の目を見ることなく自然消滅ということにはならんことを祈る
242:デフォルトの名無しさん
10/02/05 08:45:02
いや、趣味レベルでやってるのはあんただけだとおもうぞw
243:デフォルトの名無しさん
10/02/05 09:12:23
VS2010、Expression Encoder 3、Evernoteとかビジネスアプリの事例も増えてきてる
244:デフォルトの名無しさん
10/02/05 09:33:08
MDXやXNA臭がするのは事実
245:デフォルトの名無しさん
10/02/05 09:38:54
> XNA臭
するするwwww
246:デフォルトの名無しさん
10/02/05 09:42:25
わざわざageて自演ですか?
247:デフォルトの名無しさん
10/02/08 22:32:50
>>228
そこまでやったら、Modelを直接バインドしたいなw
248:デフォルトの名無しさん
10/02/08 22:49:34
エッセンシャルWPFのP324にあるTreeViewとHierarchicalDataTemplateの
例がさっぱり分かんねーーーーー。
Binding Path='.'ってなんぞ。
249:デフォルトの名無しさん
10/02/08 22:58:47
そこにバインドされているDataContext自体。
250:デフォルトの名無しさん
10/02/08 23:01:54
綺麗さよりもスピード重視したWPFがあればいいのに
251:デフォルトの名無しさん
10/02/08 23:02:37
DirectXで直接ゴリゴリやればいいじゃん
252:デフォルトの名無しさん
10/02/08 23:10:06
DirectXわかんない
253:デフォルトの名無しさん
10/02/08 23:14:50
WPFはバインドで動的にリフレクションの黒魔術で
エロイムエッサイムしている時点でどうがんばっても速度は限界があるだsろ。
254:デフォルトの名無しさん
10/02/08 23:17:57
フレームワーク全体としてはともかく描画だけなら速くできるだろ
そこ分離するためにDrawingみたいなちょっと低レベルなレイヤがあるんだから
255:デフォルトの名無しさん
10/02/08 23:35:42
>>247
そこまでやったら、俺のItemを美人Modelに直接バインドしたいなw
256:デフォルトの名無しさん
10/02/09 00:10:06
面白いと思って書いてるんだろうか
257:デフォルトの名無しさん
10/02/09 00:17:26
たくさんレス付いてると思ってわくわくしながらリロードしてるんだろな
258:デフォルトの名無しさん
10/02/09 00:28:51
少しつれた...
259:デフォルトの名無しさん
10/02/09 00:30:59
今時こんなレスでも釣れたって言うのか
260:デフォルトの名無しさん
10/02/09 05:07:34
十分大漁です(´・ω・`)
261:デフォルトの名無しさん
10/02/09 06:08:29
>>249
DataType="{x:Type io:DirectoryInfo}"で指定した型をコンバーターで返しているから、
返ってきたDirectoryInfo[]もHierarchicalDataTemplateの対象になってるってことですか?
IsExpandとかどう処理してんのか謎。
snipet
<UserControl.Resources>
<HierarchicalDataTemplate DataType="{x:Type io:DirectoryInfo}">
<HierarchicalDataTemplate.ItemsSource>
<Binding Path='.'>
<Binding.Converter>
<local:GetFileSystemInfoConveter />
</Binding.Converter>
</Binding>
</HierarchicalDataTemplate.ItemsSource>
<TextBlock Text="{Binding Path=Name}" />
</HierarchicalDataTemplate>
</UserControl.Resources>
<TreeView ItemsSource="{Binding}" />
262:デフォルトの名無しさん
10/02/09 06:58:15
> <HierarchicalDataTemplate DataType="{x:Type io:DirectoryInfo}">
> <HierarchicalDataTemplate.ItemsSource>
> <Binding Path='.'>
型を返しているんじゃなくて、DataType=...は、「この型を表示要素に変換するDataTemplateだよ」と書いているだけ。
リソースに書いてあるデータテンプレートがあれば、明示的にデータテンプレートを書かなかった場合に
その型のインスタンスをバインドしたときに自動的に適用される。
> 返ってきたDirectoryInfo[]もHierarchicalDataTemplateの対象になってるってことですか?
このコンバータはDirectoryInfoから、IEnumerable<DirectoryInfo>に変換するのかな?
ならば、上と同様に型が一致すれば適用される。あとは再帰的に。
263:デフォルトの名無しさん
10/02/09 10:40:42
>>262
後出しになってすいません。
コンバータはreturn ((DirectoryInfo)value).GetDirectories();です。
レスありがとうございます。理解が進みました。
264:デフォルトの名無しさん
10/02/10 00:48:39
VS2010RC出たね
WPFは作る方は楽なんだろうけど
使う方から見ると悪夢だな
265:デフォルトの名無しさん
10/02/10 00:50:17
>>264
そう?
266:デフォルトの名無しさん
10/02/10 10:30:27
VS2010に関して言えばレンダリングにWPF使ってるだけなので
WPFだから特に楽って事もないだろう
267:デフォルトの名無しさん
10/02/10 15:12:52
WPFでフリーソフト作ってるけどWinXPは動作保障外にしてる
間違ってないよね俺
268:デフォルトの名無しさん
10/02/10 15:19:44
>>267
間違ってます
269:デフォルトの名無しさん
10/02/10 15:21:37
フリーソフトで動作保証なんてあるんか?
270:デフォルトの名無しさん
10/02/10 15:24:47
>>269
上手く動かなくても知らんってこと
271:デフォルトの名無しさん
10/02/10 15:46:09
フリーソフトなんだから好きにしたらいいよ
272:デフォルトの名無しさん
10/02/10 19:30:19
XPなんて臭いもん外すだろ…>>267は正しい
273:デフォルトの名無しさん
10/02/10 19:33:19
WPFを使っているとXPとVista/7で細かい部分で挙動が違うことがままあるからなぁ…
XPを保証外ってのは賢明だな。
274:デフォルトの名無しさん
10/02/10 19:36:04
XPは臭いのか
まあそれはいいとして確かにXP->Vistaでかなり変わってるからなあ
275:デフォルトの名無しさん
10/02/10 20:59:02
そろそろ保証外にしてもいいんじゃないの?フリーソフトなら。
仕事だとなかなかそうはいかんかもしれないけど。
276:デフォルトの名無しさん
10/02/10 21:43:12
>>266
VS2010で再変換が使えるようになったのはWPF採用のおかげだと思う。
277:デフォルトの名無しさん
10/02/10 21:54:37
再変換って?
278:デフォルトの名無しさん
10/02/10 21:56:43
え?
279:デフォルトの名無しさん
10/02/10 21:59:35
再変換って言われてもIMEの再変換くらいしか思いつかない
280:デフォルトの名無しさん
10/02/10 22:11:42
違うのか?
281:デフォルトの名無しさん
10/02/10 22:26:36
VS2010で再変換できるのがそんなにうれしいのかなと
282:デフォルトの名無しさん
10/02/12 15:11:04
WPFで、Silverlightアプリをホストできますか?
283:デフォルトの名無しさん
10/02/12 16:43:40
できるよ
284:デフォルトの名無しさん
10/02/12 20:12:47
codeplexにあったな
285:デフォルトの名無しさん
10/02/17 15:39:06
マウスクリックしてPopup表示するのどうすればいいんだ?
最初から表示させとくことしかできないの?
286:デフォルトの名無しさん
10/02/17 15:57:18
tooltipなのかダイアログかはっきり汁
287:デフォルトの名無しさん
10/02/17 16:03:08
Popupクラスだよ
イベントハンドラかいて出来たけど
288:デフォルトの名無しさん
10/02/18 13:05:12
DataGridで右寄せにするにはどうすればいいですか?
あるサイトにあった
<Style x:Key="NumberColumnStyle" TargetType="{x:Type my:DataGridCell}">
<Setter Property="HorizontalAlignment" Value="Right" />
</Style>
をそのまま書くとPropertyDescriptorの値が無効ですといわれてしまいます
289:デフォルトの名無しさん
10/02/18 13:45:39
・・・忘れてください
290:デフォルトの名無しさん
10/02/18 14:30:15
忘れられるもんか
291:デフォルトの名無しさん
10/02/18 17:01:05
あなたのことが忘れられないの///
292:デフォルトの名無しさん
10/02/18 19:15:11
俺が忘れさせてやるよ
293:デフォルトの名無しさん
10/02/18 20:21:05
金属バットで頭をバコーン☆! か
294:デフォルトの名無しさん
10/02/19 05:29:22
URLリンク(msdn.microsoft.com)
ここの解説で、
>この不要なオーバーヘッドを回避するには、
>WPF に対して、イメージをサムネイル サイズにデコードするように要求するか、
これはBitmapSourceを生成する時点で大きさを指定することで、
>サムネイル サイズのイメージを読み込むように要求します。
これはもとから小さいサイズの画像を用意しておくってことでいい?
ImageコントロールのWidth/Heightでの指定は非効率つーことだよね
295:デフォルトの名無しさん
10/02/19 05:35:55
>>294
その辺はメモリやディスクの場所とCPU(GPU)の演算資源とのトレードオフだよ
どの段階でサムネイルを用意するかはソフト次第ってところだけど
たとえば3Dゲームなんかだとミップマップというのがそれっぽい
画像の管理かなあ
296:デフォルトの名無しさん
10/02/20 11:48:58
質問です。
画像読み込み用スレッドにて作成した System.Windows.Media.Imaging.BitmapImage
クラスを、ウィンドウのある元スレッドにて使用したいのですが、
InvalidOperationException が発生し、動作しませんでした。
別のスレッドからWPFエレメントを操作しようとすると、
同様の例外が発生することから多分無理だろうと思っていましたがやはりダメでした。
読み込む画像のサイズが大きくそれなりに数があるので、
できれば読み込みは非同期で行いたいと思っております。
どのような解決方法がございますでしょうか?
297:デフォルトの名無しさん
10/02/20 12:09:35
>>296
BitmapImage読み込み後にFreezeすればスレッド間で共有できる筈
298:デフォルトの名無しさん
10/02/20 12:55:58
>>297
早速調べてみます、ありがとうございます!
299:デフォルトの名無しさん
10/02/20 13:17:10
>>297
無事成功しました。
操作したい場合はCloneで置き換えればよいみたいですね。
ありがとうございました。
300:デフォルトの名無しさん
10/02/20 17:52:46
最近WPF使ってるが、バインディングやらテンプレートのせいで
ちょっと規模が大きくなってくるとコードの見通しが絶望的に悪くなってくる。
せっかくC#なのに・・・
301:デフォルトの名無しさん
10/02/20 17:57:45
そりゃ本来XAMLは人が読み書きするもんじゃないから
302:デフォルトの名無しさん
10/02/20 17:59:44
>>301
じゃ、どーやってつくるんだよ
303:デフォルトの名無しさん
10/02/20 18:01:34
XAMLでプログラムとデザインや設定が綺麗に分離されたのは素晴らしいんだが
WPFの本領を発揮しようとすると途端に至る所で色んな処理を書かなきゃいけなくなって死ぬ
304:デフォルトの名無しさん
10/02/20 18:03:25
XAMLはGridだけで充分
305:デフォルトの名無しさん
10/02/20 18:05:28
>>304
表示も入力もできないよママン
306:デフォルトの名無しさん
10/02/20 18:36:38
XAMLはエディタが全プロパティきっちり書けるようになってからが本領発揮だと思う。
いまはどうしても手で書き足さないとだめだもんな。
Expression Blendは使ったことないからわからない。
307:デフォルトの名無しさん
10/02/23 11:52:03
WPF Toolkit - February 2010 Release
308:デフォルトの名無しさん
10/02/23 11:58:44
>>307
kwsk
309:デフォルトの名無しさん
10/02/23 12:37:08
>>307
うぉ、マジだ…
URLリンク(wpf.codeplex.com)
310:デフォルトの名無しさん
10/02/23 12:38:50
Ratingってなーに?
311:デフォルトの名無しさん
10/02/23 12:48:42
iTun○sのアレ
312:デフォルトの名無しさん
10/02/23 18:08:56
・18歳未満使用禁止になりました
とかだとは流石に思わなかった
313:デフォルトの名無しさん
10/02/28 16:59:57
WPF始めてサンプル作ってみたが、UI外観のカスタマイズやアニメーションがタグ要素だけでできて実行ファイルサイズも小さいんだな
リソースどうなってん?
XAMLがUI要素だけのための超高級言語っぽくて正直とっつきにくいが、日本語解説サイトもっと増えてくれー!
ついでにasp.net使える無料スペースも増えてくりゃれ、ドメインはいらんのです
314:デフォルトの名無しさん
10/03/04 19:53:39
WPFは無くなると思うよ。
もともと.NET FrameworkにGUIアプリ向けのライブラリが混入してること自体が間違いだし、それをSilverlightで是正しようとしてるね。
315:デフォルトの名無しさん
10/03/04 21:22:57
えっ?
316:デフォルトの名無しさん
10/03/04 21:25:15
何それこわい
317:デフォルトの名無しさん
10/03/04 21:27:31
WPFは無くならん
何を勘違いしてるのか知らんが、.NETをはじめとしたMSの言語群は「短期間で高品質な生産」を行うためにある
つまりアイデアが最も重要で、使い方を考えられない人間は価値を見いだせていないだけだ
318:デフォルトの名無しさん
10/03/04 21:37:58
なくならないだろうけど
クライアントアプリはなんかどんどん微妙な立ち位置になってきてる気はするね。
319:デフォルトの名無しさん
10/03/04 22:09:13
WPFはGridだけ残るよ
320:デフォルトの名無しさん
10/03/04 22:38:42
Silverlightでもクライアントアプリ作れるし、将来的に完全にWPFに置き換わるようになっていくってこと。
WPFにある程度追いついてしまったらSilverlightの方が幅広く活用されるのはは当然です。
Gridありますし。
321:デフォルトの名無しさん
10/03/04 22:54:37
Silverlight も WPF も基本は一緒だもんな。
322:デフォルトの名無しさん
10/03/04 22:56:26
設計は全然違うけどな
Silverlightの勝利はマネージコードの敗北です
323:デフォルトの名無しさん
10/03/04 23:30:53
>>320
>Silverlightでもクライアントアプリ作れるし、将来的に完全にWPFに置き換わるようになっていくってこと。
将来Visual Studioの実装がSilverlightで置き換えられるって? んなアホな。
Visual Studioの軽量版がSilverlightで実装されることはあるかもしれないが、
それは新規需要の開拓であって今のVisual Studioの置き換えでは無かろうよ。
324:デフォルトの名無しさん
10/03/04 23:58:39
Vistaを7で無かったことにするのと同じですよ
325:デフォルトの名無しさん
10/03/05 00:13:44
エッセンシャルの先頭10ページを読めばどうしてWPFが必要か理解できて、そんな寝言など出てこないはずなんだが
キミがそう思うのは自由だがひとには話さないことだな
326:デフォルトの名無しさん
10/03/05 00:26:27
WPFで作られたアプリが起動しなくなった
WPFじゃないアプリじゃこんなことなかったのに
327:デフォルトの名無しさん
10/03/05 01:07:10
釣針垂らすならもうちょっと頑張れよ…
328:デフォルトの名無しさん
10/03/05 07:55:34
>>314
gui用のライブラリが入ってるのが間違いとか、意味分からんわ。
view無しのフレームワークとかありえんだろ。ウェブのDOMも間違いとかいい出しそうだな。
329:デフォルトの名無しさん
10/03/05 08:19:56
>>325
先頭10ページを要約してよ。
→ 自分で買って読め
はいはい
330:デフォルトの名無しさん
10/03/05 10:54:55
そのへんの書籍がよくフリーでpdf公開されてたりするのも知らんのだろうな
331:デフォルトの名無しさん
10/03/05 12:23:09
URLも示さずに何言ってんのこの人。
エッセンシャルは公開*されてません*
332:デフォルトの名無しさん
10/03/05 12:37:34
SilverlightはUI周りの実装がなあ
さすがにXAMLパーサまでアンマネージコードで実装するのはどうかと
333:デフォルトの名無しさん
10/03/05 12:37:56
立ち読みでもしてこいよ。おれはおまえのママじゃないんだから
334:デフォルトの名無しさん
10/03/05 18:54:28
>>333
実は読んだことないでしょ?w
335:デフォルトの名無しさん
10/03/05 22:44:45
WPFやってるやつならみんな持ってるよ。これしかまともな本がないからな。君はもってないのか? 笑う。
336:デフォルトの名無しさん
10/03/05 23:21:14
マトモとは思えないが、相対的にはマトモだなw
337:デフォルトの名無しさん
10/03/05 23:33:56
WPF詳しい奴本書いて出版しろよ
今ならベストセラー狙える
338:デフォルトの名無しさん
10/03/06 00:20:54
>>335
俺もってないけど?
普通はMSDNだのブログだので充分だと思うが。
339:デフォルトの名無しさん
10/03/06 01:07:31
WPF本は2年ぐらい前にここで教えてもらったAdam NathanのWPF UnleashedとエッセンシャルWPFしか読んでない。
最近はネットの情報も増えてきて随分過ごしやすくなったね。
340:デフォルトの名無しさん
10/03/06 03:55:02
本を所持してるだけでどんだけ高圧的になれるんだw
341:デフォルトの名無しさん
10/03/06 09:50:06
>>339
その本正直ゴミみたいな本だよね
342:デフォルトの名無しさん
10/03/06 10:39:55
>>338
ほぼそれで大丈夫だよ。
343:デフォルトの名無しさん
10/03/06 12:23:51
Programing WPFは良かったよ。Pro WPFはどうなんだろ。
日本語の本では、新しいのが出ないね。
344:デフォルトの名無しさん
10/03/06 13:11:01
WPF流行ってないからしかたない。
今使ってる層はWebから情報得たり英語ソースあたったりする層ぐらいじゃないの?
345:デフォルトの名無しさん
10/03/06 13:38:29
すみません、質問です。
これからwpf入門をしようと思い、サイトなどを見ているのですが、
以下のサイトの記述は誤りであるという解釈でよろしいのでしょうか。
URLリンク(www.atmarkit.co.jp)
> Silverlightはラインタイムのサイズを4MBytes台に抑えるという
> 至上命令があったため、WPFと比べると機能が削られているという
> 違いが存在する。
「ラインタイム」ではなく「ランタイム」だと思うのですが、
別にそういう用語があるのか気になってます。
346:デフォルトの名無しさん
10/03/06 13:44:41
ランタイムで合ってると思うよ。
347:デフォルトの名無しさん
10/03/06 13:45:53
ないです
348:デフォルトの名無しさん
10/03/06 13:47:56
>>346
ありがとうございます。
349:デフォルトの名無しさん
10/03/07 00:05:23
SilverlightのUIフレームワークはWPFに似せた全くの別物なので
WPFと比べて削られてるって言うのはちょっと不適切だと思う
.NET Frameworkと比べてSilverlightは機能が削られているというならわかるけど
350:デフォルトの名無しさん
10/03/07 11:54:17
Expressionの開発に携わってる人が、SilverlightはWPFのサブセットだって言ってたよ。
351:デフォルトの名無しさん
10/03/07 17:29:50
サブセットなめんな
352:デフォルトの名無しさん
10/03/07 18:48:56
silverlightがサブセットといってもWPFが完全な上位互換でも無いんだよね。
silverlightにあってWPFに無い機能もあって移植のときに困る。
353:デフォルトの名無しさん
10/03/07 18:52:27
じゃあどちらか無くした方がいいな
354:デフォルトの名無しさん
10/03/07 19:29:00
UI部分に関してはAPIは似てるけど実装が全く違うんだよな
他のところはだいたいそのまま.NETのコードを拝借しただけなんだけど
355:デフォルトの名無しさん
10/03/08 22:09:33
ようするにバカは使うなってことだ
ユトリは大人しくオナニーでもしてろ
356:デフォルトの名無しさん
10/03/09 11:32:09
>>344
結局は面倒くさいからな
マイクロソフトのこの手の製品の癖として、何でも出来るようにさせるがために、全体の簡便さや明快さを犠牲にする。
作るソフトの特殊度・高機能度 低 中 高
要する労力 30 50 70
これを、 15 30 100
くらいの設計思想にしたっていいように思うがそうはしない。
ソフト制作の環境が昔と様々に違っている上、「また数年も経てば新プログラミング製品を出すんだろ?だとしたら過渡期のものをいちいち細かく研究してられるか。」感も強く、流行らないのも仕方ない。
357:デフォルトの名無しさん
10/03/09 11:48:54
でもおまえらもこれくらい10分もあれば作れるだろ
URLリンク(www.dotup.org)
358:デフォルトの名無しさん
10/03/09 12:00:40
>>537
WPF と全然関係なくね?
359:デフォルトの名無しさん
10/03/09 12:10:24
おまえらのいうWPFってGUI記述マークアップのことじゃないのか
360:デフォルトの名無しさん
10/03/09 13:29:06
MS製の割には無駄に複雑な感があるよね
Javaみたい
361:デフォルトの名無しさん
10/03/09 15:51:45
むしろMSの代名詞みたいなもんじゃないか>無駄に複雑
362:デフォルトの名無しさん
10/03/09 16:01:49
OLE/COM時代を通っている者ならば問題ない
363:デフォルトの名無しさん
10/03/09 16:37:36
無駄に複雑な方が色々金になるし。
あんまり簡単すぎるとうちらの仕事もなくなっちゃうよorz
364:デフォルトの名無しさん
10/03/09 16:42:22
依存プロパティ作るのめんどくさいからバインディングとかあまり使ってない
365:デフォルトの名無しさん
10/03/09 17:01:04
バインディング使わないとか勿体無すぎる
366:デフォルトの名無しさん
10/03/09 17:12:59
バインディングは使っても依存プロパティ自体あまり使わないと思うの
367:デフォルトの名無しさん
10/03/09 17:21:53
プロパティ型、プロパティ名、定義している型、初期値の4つを指定するだけじゃん
自動実装のプロパティと比べて2つも増えているのが面倒とか?
368:デフォルトの名無しさん
10/03/09 17:24:33
あとおまけでCLRラッパーも
369:デフォルトの名無しさん
10/03/09 17:57:11
依存関係プロパティは専用の構文とか用意すべきだったと思う。
正直くどい。
370:デフォルトの名無しさん
10/03/09 18:42:37
たしかにくどいけどC#全般がそういう言語だと思うことにした。
Visual Studio使っていれば、propdp[Tab][Tab]と叩くいて雛形を埋めるだけで出来上がるし。
371:デフォルトの名無しさん
10/03/09 18:47:50
スニペット必須なぐらいならいっそ #define みたいな仕掛け用意しときゃいいのにね。
不毛すぎる。
372:デフォルトの名無しさん
10/03/09 20:17:36
ツールヒントの表示の仕方も分からない
373:デフォルトの名無しさん
10/03/10 13:13:42
WPFはなくなるの?
答えはもちろんNO!
374:デフォルトの名無しさん
10/03/10 15:24:48
まあさすがに30年ぐらいしたらなくなってるとは思う。
375:デフォルトの名無しさん
10/03/10 15:30:32
COBOLは残ったんだよな・・・そう言われつつ
376:デフォルトの名無しさん
10/03/10 17:37:34
無くなると分かっている技術を習得しなければならないこともあるということさ
377:デフォルトの名無しさん
10/03/10 17:55:12
というよりSE/PGは(それに限らずどんな職業も)そういったくだらないその場限りの
バッドノウハウをお客さんのかわりに網羅する仕事だもんな。
Oracle のあるバージョン特有のチューニング方法とかどう考えても10年後20年後に役立つ知識じゃない。
378:デフォルトの名無しさん
10/03/11 00:30:28
1日役に立てば十分だ
379:デフォルトの名無しさん
10/03/11 01:17:27
WPF は Silverlight 4 の INotifyDataErrorInfo みたいにコントロールに非同期でエラーを伝える方法ってないのかな?
DataGrid で行の確定ごとにサーバーに問い合わせて、エラーを表示したいんだけど良い方法が分からない。
380:379
10/03/11 22:13:56
自己解決した。
IDataErrorInfo と INotifyPropertyChanged を実装してエラー更新後に PropertyChanged 呼んでやれば良いだけだった。
PropertyChanged でエラー情報も拾ってくれるんだね。
381:デフォルトの名無しさん
10/03/12 20:55:17
VisualStudio2008 SP1 VC# 2008
WPF3.5 で開発しています。
[DllImport("user32.dll")]
public static extern bool SetProp(IntPtr hWnd, string lpString, IntPtr hData);
this.Loaded += new RoutedEventHandler(
delegate(object sender, RoutedEventArgs arg) {
var source = new WindowInteropHelper(this);
SetProp(source.Handle,
"MicrosoftTabletPenServiceProperty", new IntPtr(0x01000000));
}
);
によってマルチタッチを有効にし(これはMSDNのサンプルからも得られる知識です)、
Stylusイベントによってマルチタッチアプリを開発しています。
参考になるサイトは以下です。
URLリンク(blog.andreweichacker.com)
MSDNのサンプル、↑のブログ、その他海外のサイト、どこを見ても
StylusDown, Up によってタッチの有無を判定していますが、
StylusEnter, Leave を用いたものを見たことがありません。
試しに Enter, Leave のイベントを記述し、対応する関数内で
(たとえば)listBox1.Items.Insert(0, "Stylus Enter" + e.StylusDevice.ID);
などと記述すると、Enter, Leave は問題なく取得できています。
が、1本目の指で StylusEnter し、2本目の指をウィンドウ内にタッチすると
Enter, Leave が暴走します。
(※すみません、次のレスに続きます)
382:381
10/03/12 21:09:20
(※続きです)
window1 内に、Rectangle1, Rectangle2 を配置し、
線を太くし、それぞれに StylusDown, Up, Enter, Leave の関数を記述します。
各関数では、↑に貼ったURLのように StylusのIDで条件分岐し、
Rect1/2 どちらのイベントか、Down/Up/Enter/Leaveどのイベントか
が分かるように、文字列として出力するとします。
■試行1(Enter, Leaveのイベントを取らない場合)
・Rect1をタッチすると、"Rect1 Down 16" みたいに表示されます。
16はStylusDevice.IDの例です。
・Rect1上から指を離すと、"Rect1 Up 16" みたいに表示されます。
・Enter, Leave, Rect2の場合も同じです。
・Rect1をタッチしながらRect2をタッチすると、"Rect1 Down 16" に続いて
"Rect2 Down 17" みたいに表示されます。
続いて指を離すと、指に応じたIDが "Up" された表示が出ます。
■試行2(Enter, Leaveのイベントを取る場合)
・Rect1の外をタッチして、Rect1の中にスライドさせると、"Rect1 Enter 16"みたいに表示。
・そのままLeaveすると、"Rect1 Leave 16"みたいに表示。
・Rect1に Enter した状態で、Rect1, Rect2 の外をタッチすると、
"Rect1 Leave 16", "Rect1 Enter 16" "Rect1 Leave 16" "Rect1 Enter 16" ...
と、次々と表示されます。
・Rect1に Enter した状態で、Rect2をタッチすると、
"R1 Leave 16" "R1 Enter 16" "R2 Leave 17" "R2 Enter 17" "R1 Enter 16" "R1 Leave 16" "R2 Enter 17"...
と、次々と表示されます。
これが何故か分かる方、
また、この対処方法が分かる方はおりますでしょうか?
長文、申し訳ありませんがよろしくお願いします。
383:デフォルトの名無しさん
10/03/12 21:18:58
単純に「内部で単一のポイントとしてエンたーりーぶを計算している」ってことだろ。
間違っても「どうすればいいか」とかは聞かないでくれよ。
384:381
10/03/12 21:33:23
>383
早速のレスありがとうございます。
Down, Up は同一のポイントとして計算はされず
Enter, Leaveは同一として計算される
ことが分かる情報があるということでしょうか。
Down, Up と Enter, Leave に大きな違いがある
という情報にあたった経験がありません・・・。
よろしくお願いします。
385:デフォルトの名無しさん
10/03/12 21:43:57
きみが「こう実装されてるはずだ!」とどんだけ叫ぼうと帰ってきたイベントが答えだよ
いいたいことがあるなら上司かMSにでも言え。俺に言うな。
386:381
10/03/13 01:16:49
>>385
失礼しました。
>>383がそういう意図とは取れませんでした。
業務内容とはことなりますが
SRで訊けるかとり合ってみます。
387:デフォルトの名無しさん
10/03/15 15:26:35
TreeViewのSelectedItemプロパティが読み取り専用のため、コード上で
treeview.SelectedItem = item;
のように指定できません。
例えばディレクトリ構成をツリー表示している場合、初期ディレクトリを開いて
選択状態にしたい時はどのようにしたらいいでしょうか?
388:デフォルトの名無しさん
10/03/15 17:18:43
>>387
つEnsureVisible()
389:デフォルトの名無しさん
10/03/15 17:33:12
普通に、IsSelected=trueするだけだろ
390:デフォルトの名無しさん
10/03/19 01:16:40
WPF M-V-VM Toolkit 0.1のドキュメント
Model-View WPF Applications--Part 2, Walkthroughにおいて
コマンド呼び出しにわざわざCommandReferenceを間にかませているのだけど
これは何の意味があるのでしょうか?
ViewModelのプロパティ名を記述する部分を一箇所にまとめるという意味はあると思いますが。。。
そもそもCommandReference自体が何をするためのもの?
391:390
10/03/20 01:06:56
<KeyBinding Key="X" Modifiers="Control" Command="{StaticResource ExitCommandReference}" />
となってるところを
<KeyBinding Key="X" Modifiers="Control" Command="{Binding ExitCommand}" />
こうしちゃえばいいじゃんと思ったら依存関係プロパティじゃないからバインドできないということなのね〜
StaticResourceでワンクッション置けばできる仕組みはなんとなくしか理解してないが
バインドできない(Dependencyでない)プロパティ用の中継オブジェクトという認識で理解。
392:デフォルトの名無しさん
10/03/20 20:34:28
Microsoft Extensible Application Markup Language (XAML) technical documentation set
URLリンク(www.microsoft.com)
読んでないけど、なんか来てた。
393:デフォルトの名無しさん
10/03/20 20:49:32
XAMLで書かれたベクタ画像を動的に読み込んで表示したいのですが、
どうしたらいいでしょうか?
394:デフォルトの名無しさん
10/03/20 20:53:25
XamlReader.Load
395:デフォルトの名無しさん
10/03/20 21:03:10
これでも動く。
[STAThread]
static void Main(string[] args) {
Application application = new Application();
application.StartupUri = new Uri(new FileInfo(args[0]).FullName);
application.Run();
}
396:デフォルトの名無しさん
10/03/21 15:27:44
等幅フォントを列挙するにはどうしたら良いんでしょうか?
Fonts.SystemFontFamilies で列挙できる FontFamily で等幅かプロポーショナルか
判断する方法ありますか?
397:デフォルトの名無しさん
10/03/22 00:41:43
OnClosingのタイミングで設定保存とか続行確認とかしたいので
OnClosingとかOnLoadイベントにICommandをバインド?したいのですが
どう書けばいいのですか?
xamlに直接書けないのかな?
イベントハンドラ作ってxaml.csにコードで書くのかな?
できないことはないと思いますがぐぐっても情報が見つけられないです
398:397
10/03/22 23:32:43
いろんなblogとか見てると
MVVMでのイベント処理は結構悩みどころなんですね。
添付プロパティをくっつけてイベントキックさせるというメンドクサイやりかたが見つかりました。
↓
URLリンク(blogs.wankuma.com)
xaml的には美しいですけどね・・・
このままではあまりに使い勝手が悪いので汎用的になるように改造してみます。
てか絶対誰か既に作ってるだろ。。。趣味だからいいんだけれどね・・・
399:デフォルトの名無しさん
10/03/23 10:59:35
OnClosing とかポップアップは MVVM 的にすとんと落ちないらしいよね。
個人的には落ちない部分は大人しくコードビハインド書いたらいいのにとは思うけど。
400:デフォルトの名無しさん
10/03/23 13:36:30
ViewModel→Viewの操作でどうしてもバインドで書けないところは
var service = (IWorkspaceService)this.Services.GetService(typeof(IWorkspaceService));
service.OpenWorkspace(HogeWorkspaceViewModel);
みたいにしたらだいたいなんとかなるとおもう
401:デフォルトの名無しさん
10/03/23 14:42:36
Eventにコマンドをバインドしたければ
AttachedCommandBehaviorが使えるよ。
URLリンク(marlongrech.wordpress.com)
402:デフォルトの名無しさん
10/03/23 16:22:41
WPF3.5でテキストがGDIに比べてぼやけた状態で描画されてしまう問題に対応しようとしています。
私なりに調べた結果、WPFの描画の際に論理座標で色を配置する仕様が原因であること、図形と画像については
RenderOptionsのパラメータで解決させることができる。
ですがテキストに関しては解決させる方法が見つからないでいます。
WPF4.0から対応するといった内容のページも見つけましたが、なんとか解決させたいと思っています。
どなたか解決方法を教授願えませんでしょうか。
403:397
10/03/23 17:04:58
>>399
まぁ >>122 ということなのです。
WPF触りたてなのでまだまだMVVMの華麗なる疎結合に夢と希望をもっていますのでw
>>400
IWorkspaceService ってインターフェースはMSDNもグーグルさんも知らないとおっしゃってるのですが・・・
>>401
おお!すばらしいです。
ぱっとみ問題ありそうなのはEventArgsが利用できなさそうなくらいですかな。
大変参考になります。
こんな↓ページを見つけまして
URLリンク(blogs.microsoft.co.il)
でも上のはRoutedEventにしか対応してないから普通のEventHandler対応版を追加するのに
リフレクション使ってイベント名からイベント追加してというコードを作ったのですが
同じコードがあるじゃないか・・・orz
404:デフォルトの名無しさん
10/03/23 17:29:16
>>402
WinFormsHost
敗北宣言に等しいけど
405:デフォルトの名無しさん
10/03/23 17:38:10
カスタムスタイルでレイアウトの入れ子が増えるとおかしくなる。
406:デフォルトの名無しさん
10/03/23 17:48:50
知らん
XAMLくらい出せるだろ
407:デフォルトの名無しさん
10/03/23 22:35:36
あと、.NET 3.5のWPFでぼけたように見える原因の1つに埋込ビットマップをまったく使わないせいというのもある。
だからどうしたらいいと言えるわけではないけれど。
408:デフォルトの名無しさん
10/03/23 22:51:45
VS2010RC, WPF4.0
を使っているのだが、
Win32におけるWM_GESTUREみたいなもので
Gestureイベントってあるのかな?
zoomとかrotateとか簡単に取得できると
良いのだが。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5351日前に更新/192 KB
担当:undef