{"id":1881,"date":"2013-08-21T08:30:45","date_gmt":"2013-08-20T23:30:45","guid":{"rendered":"http:\/\/www.gisdeveloper.co.kr\/?p=1881"},"modified":"2017-01-31T19:44:03","modified_gmt":"2017-01-31T10:44:03","slug":"c%ec%9d%98-%ec%8a%a4%eb%a0%88%eb%93%9cthread%ec%97%90%ec%84%9c-ui-%ec%bb%a8%ed%8a%b8%eb%a1%a4-%ec%82%ac%ec%9a%a9%ed%95%98%ea%b8%b0","status":"publish","type":"post","link":"http:\/\/www.gisdeveloper.co.kr\/?p=1881","title":{"rendered":"C#\uc758 \uc2a4\ub808\ub4dc(Thread)\uc5d0\uc11c UI \ucee8\ud2b8\ub864 \uc0ac\uc6a9\ud558\uae30"},"content":{"rendered":"<p>\uae30\ubcf8\uc801\uc73c\ub85c UI\ub97c \uac16\ub294 \ucee8\ud2b8\ub864\uc740 \uba54\uc778 \uc2a4\ub808\ub4dc\uac00 \uc544\ub2cc \ub2e4\ub978 \uc2a4\ub808\ub4dc\uc5d0\uc11c \uc811\uadfc\ub420\ub54c \ucda9\ub3cc(Crash)\uc774 \ubc1c\uc0dd\ud569\ub2c8\ub2e4. \ud604\uc7ac C\/S \uae30\ubc18\uc758 \ub9f5\uc5d4\uc9c4\uc778 \ub4c0\ub77c\ub9f5\uc744 \uc11c\ubc84\ub2e8\uc5d0\uc11c \uc0ac\uc6a9\ud558\uace0 \uc788\uc73c\uba70, \uc11c\ubc84\uc5d0\uc11c \uc5ec\ub7ec \uac1c\uc758 \uc2a4\ub808\ub4dc\uc5d0\uc11c UI \ucee8\ud2b8\ub864\uc778 \ub4c0\ub77c\ub9f5\uc5d0 \uc811\uadfc\ud560\ub54c \uc544\ub798\uc640 \uac19\uc740 \ucda9\ub3cc\uc774 \ubc1c\uc0dd\ud569\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.gisdeveloper.co.kr\/wp-content\/uploads\/1\/1201218747.png\" class=\"aligncenter\" width=\"360\" height=\"175\" alt=\"\uc0ac\uc6a9\uc790 \uc0bd\uc785 \uc774\ubbf8\uc9c0\" \/><\/p>\n<p>\uc774\uc5d0 \ub300\ud55c \ud574\uacb0 \ubc29\uc548\uc740 \ub378\ub9ac\uac8c\uc774\ud2b8(Delegate)\uc640 UI \ucee8\ud2b8\ub864\uc744 \ub2f4\ub294 Form \ud074\ub798\uc2a4\uc758 Invoke \ub9e4\uc11c\ub4dc\ub97c \uc0ac\uc6a9\ud574 \ud574\uacb0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc608\ub97c \ub4e4\uc5b4\uc11c \uc9c0\ub3c4 \uc5d4\uc9c4\uc778 \ub4c0\ub77c\ub9f5\uc744 \uc774\uc6a9\ud574 \uc5b4\ub5a4 \uc9c0\uc810\uc774 \ud2b9\uc815 \ud3f4\ub9ac\uace4\uc5d0 \ud3ec\ud568(Contain)\ud558\ub294\uc9c0\uc5d0 \ub300\ud55c \uae30\ub2a5\uc744 \uc218\ud589\ud558\uace0\uc790 \ud560 \ub54c\ub97c \uc0b4\ud3b4 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\ub4c0\ub77c\ub9f5\uc744 \uc774\uc6a9\ud574 \ub2e4\uc74c\uacfc \uac19\uc740 Contain\uc774\ub77c\ub294 \uc0c8\ub85c\uc6b4 \uc0ac\uc6a9\uc790 \uc815\uc758 \ub9e4\uc11c\ub4dc\ub97c \ub9cc\ub4e4\uc5c8\uc2b5\ub2c8\ub2e4. \uc774 Contain \ub9e4\uc11c\ub4dc\uc758 \uc704\uce58\ub294 \uc5b4\ub514\ub77c\ub3c4 \uc0c1\uad00\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. \uc911\uc694\ud55c \uac83\uc740, \ubc14\ub85c \uc774 Contain\uc774\ub77c\ub294 \ub9e4\uc11c\ub4dc\uac00 \ubcc4\ub3c4\uc758 \uc2a4\ub808\ub4dc\ub97c \ud1b5\ud574 \ud638\ucd9c\ub41c\ub2e4\ub294 \uac83\uc774\uace0 \ub378\ub9ac\uac8c\uc774\ud2b8 \uae30\ubc95\uc744 \uc0ac\uc6a9\ud558\uc9c0 \uc54a\ub294\ub2e4\uba74 \ucda9\ub3cc\uc774 \ubc1c\uc0dd\ud569\ub2c8\ub2e4.<\/p>\n<pre>public bool Contain(double X, double Y, int FID)\r\n{\r\n    \/\/UI \ucee8\ud2b8\ub864 \uc0ac\uc6a9\r\n}<\/pre>\n<p>\ubcc4\ub3c4\uc758 \uc2a4\ub808\ub4dc\uc5d0\uc11c \ubb38\uc81c \uc5c6\uc774 \uc704\uc5d0\uc11c \uc5b8\uae09\ud55c Contain\uc774\ub77c\ub294 &nbsp;\ub9e4\uc11c\ub4dc\ub97c \ud638\ucd9c\ud558\uae30 \uc704\ud574\uc11c\ub294, Contain \ub9e4\uc11c\ub4dc\ub97c \uc9c1\uc811 \ud638\ucd9c\ud558\uc9c0 \uc54a\uace0 \ub378\ub9ac\uac8c\uc774\ud2b8(\ub300\ub9ac\uc790)\ub97c \uc0ac\uc6a9\ud558\uba74 \ub429\ub2c8\ub2e4. \ub378\ub9ac\uac8c\uc774\ud2b8\ub97c \ub2e4\uc74c\ucc98\ub7fc Contain \ub9e4\uc11c\ub4dc\uac00 \uc874\uc7ac\ud558\ub294 \uac19\uc740 \ud074\ub798\uc2a4\uc5d0 \uc120\uc5b8\ud569\ub2c8\ub2e4.<\/p>\n<pre>private delegate bool DelegateContain(double X, double Y, int FID);\r\nprivate DelegateContain delegateContain;<\/pre>\n<p>\uc774\uc81c \uc704\uc758 \ub378\ub9ac\uac8c\uc774\ud2b8\uc640 Contain \ub9e4\uc11c\ub4dc\ub97c \uc5f0\uacb0\ud558\ub294 \ucf54\ub4dc\ub294 \ub2e4\uc74c\uacfc \uac19\uc2b5\ub2c8\ub2e4.<\/p>\n<pre>delegateContain = new DelegateContain(Contain);<\/pre>\n<p>\uc774\uc81c \uba54\uc778 \uc2a4\ub808\ub4dc\uac00 \uc544\ub2cc \uc2a4\ub808\ub4dc\uc5d0\uc11c Contain \ub9e4\uc11c\ub4dc\uc758 \uae30\ub2a5\uc744 \ud65c\uc6a9\ud558\uae30 \uc704\ud574\uc11c\ub294 Contain\uc5d0 \ub300\ud55c \ub378\ub9ac\uac8c\uc774\ud2b8\uc778 delegateContain\ub97c \uc0ac\uc6a9\ud558\uba74 \ub429\ub2c8\ub2e4. \uc989, \ub2e4\uc74c\ucc98\ub7fc&#8230;<\/p>\n<pre>bool bContain = (bool)form.Invoke(delegateContain, X, Y, FID);<\/pre>\n<p>\uc2a4\ub808\ub4dc\uc5d0\uc11c \uc0ac\uc6a9\ud558\uace0\uc790 \ud558\ub294 UI \ucee8\ud2b8\ub864\uc774 \ub2f4\uae34 \ud3fc \uac1d\uccb4\uc758 Invoke \ub9e4\uc11c\ub4dc\ub97c \uc0ac\uc6a9\ud574 delegateContain\uc744 \ud638\ucd9c\ud558\uba70 Contain \ub9e4\uc11c\ub4dc\uc758 \uc778\uc790\ub294 Invoke \ub9e4\uc11c\ub4dc\ub97c \ud1b5\ud574 \uc804\ub2ec\ud558\uba74 \ub429\ub2c8\ub2e4. Invoke\ub294 \uac00\ubcc0 \uc778\uc790\ub97c \ubc1b\uc73c\ubbc0\ub85c \uc778\uc790\uc758 \uc81c\uc57d\uc774 \ub35c\ud569\ub2c8\ub2e4. \ub610\ud55c Invoke\uc758 \ubc18\ud658\uac12\uc740 \ub378\ub9ac\uac8c\uc774\ud2b8 \ub300\uc0c1\uc774 \ub418\ub294 \ud568\uc218\uc758 \ubc18\ud658\uac12\uc774\uba70 object \ud0c0\uc785\uc774\ubbc0\ub85c Contain \ub9e4\uc11c\ub4dc\uc758 \ubc18\ud658\uac12\uc73c\ub85c \ud615\ubcc0\ud658\ud558\uc5ec \uc0ac\uc6a9\ud558\uba74 \ub429\ub2c8\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\uae30\ubcf8\uc801\uc73c\ub85c UI\ub97c \uac16\ub294 \ucee8\ud2b8\ub864\uc740 \uba54\uc778 \uc2a4\ub808\ub4dc\uac00 \uc544\ub2cc \ub2e4\ub978 \uc2a4\ub808\ub4dc\uc5d0\uc11c \uc811\uadfc\ub420\ub54c \ucda9\ub3cc(Crash)\uc774 \ubc1c\uc0dd\ud569\ub2c8\ub2e4. \ud604\uc7ac C\/S \uae30\ubc18\uc758 \ub9f5\uc5d4\uc9c4\uc778 \ub4c0\ub77c\ub9f5\uc744 \uc11c\ubc84\ub2e8\uc5d0\uc11c \uc0ac\uc6a9\ud558\uace0 \uc788\uc73c\uba70, \uc11c\ubc84\uc5d0\uc11c \uc5ec\ub7ec \uac1c\uc758 \uc2a4\ub808\ub4dc\uc5d0\uc11c UI \ucee8\ud2b8\ub864\uc778 \ub4c0\ub77c\ub9f5\uc5d0 \uc811\uadfc\ud560\ub54c \uc544\ub798\uc640 \uac19\uc740 \ucda9\ub3cc\uc774 \ubc1c\uc0dd\ud569\ub2c8\ub2e4. \uc774\uc5d0 \ub300\ud55c \ud574\uacb0 \ubc29\uc548\uc740 \ub378\ub9ac\uac8c\uc774\ud2b8(Delegate)\uc640 UI \ucee8\ud2b8\ub864\uc744 \ub2f4\ub294 Form \ud074\ub798\uc2a4\uc758 Invoke \ub9e4\uc11c\ub4dc\ub97c \uc0ac\uc6a9\ud574 \ud574\uacb0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4\uc11c \uc9c0\ub3c4 \uc5d4\uc9c4\uc778 \ub4c0\ub77c\ub9f5\uc744 \uc774\uc6a9\ud574 \uc5b4\ub5a4 &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.gisdeveloper.co.kr\/?p=1881\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;C#\uc758 \uc2a4\ub808\ub4dc(Thread)\uc5d0\uc11c UI \ucee8\ud2b8\ub864 \uc0ac\uc6a9\ud558\uae30&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[118,8],"tags":[],"class_list":["post-1881","post","type-post","status-publish","format-standard","hentry","category-csharp","category-programming"],"_links":{"self":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1881","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1881"}],"version-history":[{"count":1,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1881\/revisions"}],"predecessor-version":[{"id":2959,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1881\/revisions\/2959"}],"wp:attachment":[{"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1881"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1881"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.gisdeveloper.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1881"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}