Ookii-dialogs-wpf: ShowDialog()์— Win32 ์ฐฝ ํ•ธ๋“ค ์ „๋‹ฌ

์— ๋งŒ๋“  2020๋…„ 10์›” 28์ผ  ยท  9์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: ookii-dialogs/ookii-dialogs-wpf

Win32 ์ฐฝ ํ•ธ๋“ค(์˜ˆ: Microsoft Word, Excel ๋˜๋Š” Outlook์—์„œ)์„ TaskDialog.ShowDialog() ์— ์ „๋‹ฌํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด์„œ๋Š” private #$ ๋Œ€์‹  TaskDialog.ShowDialog(IntPtr owner) public ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์œผ๋กœ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฐฉ๋ฒ•์„ public ๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ? ์›ํ•˜์‹ ๋‹ค๋ฉด PR์„ ํ•ด๋“œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”!

๋ชจ๋“  9 ๋Œ“๊ธ€

@mu88 ๋‹˜ , ์›์น™์ ์œผ๋กœ GetActiveWindow ๊ฐ€ ์ž˜๋ชป๋œ ์ฐฝ IntPtr ์— ๋Œ€ํ•œ ํ•ธ๋“ค์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ์‹œ๋‚˜๋ฆฌ์˜ค๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ๋ณ€๊ฒฝ์— ๋Œ€ํ•ด ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

Excel ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ๋˜๋Š” ์ด์™€ ์œ ์‚ฌํ•œ ๋‚ด์—์„œ TaskDialog๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?

๊ทธ๋ ‡๋‹ค๋ฉด null ๋ฅผ Task.ShowDialog(Window) ์— ์ „๋‹ฌํ•˜๋ฉด ์ž˜๋ชป๋œ ์†Œ์œ ์ž ํ•ธ๋“ค์„ ์–ป์Šต๋‹ˆ๊นŒ?

@augustoproiete , ๋นจ๋ฆฌ ๋Œ์•„์™€ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

WPF ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ๋ฐœ ์ค‘์ž…๋‹ˆ๋‹ค. ์ด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์€ COM์„ ํ†ตํ•ด Excel๊ณผ ํ†ต์‹ ํ•˜๊ณ  Process.MainWindowHandle $๋ฅผ ํ†ตํ•ด Excel์˜ ์ฐฝ ํ•ธ๋“ค์„ IntPtr ๋กœ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ Excel ๋‚ด์—์„œ ์‚ฌ์šฉ์ž ์ •์˜ TaskDialog ๋ฅผ ํ‘œ์‹œํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋Œ€ํ™” ์ƒ์ž์˜ ์†Œ์œ ์ž๋Š” Excel์˜ ์ฐฝ ํ•ธ๋“ค์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์šฐ๋ฆฌ์˜ ๊ฒฝ์šฐ Excel์ด WPF๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์†Œ์œ ์ž ์—ญํ• ์„ ํ•  ์ˆ˜ ์žˆ๋Š” WPF ์ฐฝ์ด ์—†์Šต๋‹ˆ๋‹ค.

๋ฆฌํ”Œ๋ ‰์…˜์„ ํ†ตํ•ด private TaskDialogButton ShowDialog(IntPtr owner) ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์‹œ๋„ํ–ˆ๊ณ  ๋งค๋ ฅ์ฒ˜๋Ÿผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์ž˜ ๋“ค๋ฆฐ๋‹ค. ๊ทธ๋•Œ PR์„ ํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์ผ๊ด€์„ฑ์„ ์œ„ํ•ด ๋‹ค๋ฅธ ๋Œ€ํ™” ์ƒ์ž์—๋„ ๋™์ผํ•œ ๊ณผ๋ถ€ํ•˜๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ ๋ณด๋„ˆ์Šค ํฌ์ธํŠธ.

๋„ค, ์ด PR์— ์ฐธ์—ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

#19๋ฅผ ํ†ตํ•ด ํ์‡„

NuGet, @augustoproiete ์˜ ์ƒˆ ๋ฒ„์ „์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋ฌผ๋ก ์ž…๋‹ˆ๋‹ค @mu88. ๋‚ด์ผ ์ €๋…๊นŒ์ง€ nuget.org์— ์ƒˆ ๋ฒ„์ „์„ ํ‘ธ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@mu88 NuGet ํŒจํ‚ค์ง€๊ฐ€ nuget.org์— ๊ฒŒ์‹œ๋จ - https://www.nuget.org/packages/Ookii.Dialogs.Wpf/1.2.0

@augustoproiete ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ์ƒˆ ํŒจํ‚ค์ง€๋ฅผ ํ†ตํ•ฉํ–ˆ๋Š”๋ฐ ๋งค๋ ฅ์ฒ˜๋Ÿผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค ๐Ÿฅณ

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰