XAML ํ๊ทธ ํ์ฅ ๋ง๋ค๊ธฐ ๋ฌธ์๋ฅผ ๋ฐ๋ผ ๊ฐ๊ณ ์์ผ๋ฉฐ ์๋น์ค ๊ณต๊ธ์ ์น์
์์ SimpleValueTargetProvider.ParentObjects
์์ฑ์ ์ธ๊ธํฉ๋๋ค. ๋๋ฌธ์์ด ์์ฑ์ ์ก์ธ์ค ํ ์ ์์ต๋๋ค IProvideParentValues๋ ๊ทธ ์ธํฐํ์ด์ค SimpleValueTargetProvider
์์์
๋๋ค internal
.
์ด๋ค ์ด์ ๋ก VS2017 intellisense๋ ๋๋ฒ๊น
์ค์ ์์ฑ์ ๋
ธ์ถํ์ง๋ง ์ฝ๋๋ฅผ ์์ฑํ ์๋ ์์ต๋๋ค. ์ด ParentObects
์์ฑ์ ๋งค์ฐ ์ ์ฉํฉ๋๋ค. ์ด๋ป๊ฒ ์ก์ธ์ค ํ ์ ์์ต๋๊น?
SimpleValueTargetProvider
์ฌ์ฉํด์๋ ์๋๋ฉฐ IProvideValueTarget
๋ฅผ ์์ฒญํ ๋๋ง๋ค ํด๋น ์ ํ์ด ๋ฐํ ๋ ๊ฒ์ผ๋ก ์์ํ๋ฉด ์๋ฉ๋๋ค. ๋ฐํ๋๋ serviceProvider๋ ์ปจํ
์คํธ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง ์ ์์ผ๋ฉฐ XamlC ์ฌ์ฉ ์ฌ๋ถ์ ๊ด๊ณ์์ด
์ ํฌ์ธํธ ParentObjects
๊ตฌํํ๋ ๊ฒ์
๋๋ค IReferenceProvider
, ๋น์ ์ ๋น์ ์ด ๊ฑฐ๊ธฐ ํ์ ์ฐพ์ ์ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ParentObjects
๋ฅผ ์์ฑ ํ ๊ณํ์ด ์์ต๋๋ค. ์์ฑ ๋น์ฉ์ด ์๋นํ ๋น์ธ๊ธฐ ๋๋ฌธ์ ์์ฑ์ ํผํ ์ ์๋์ง ์์ง ํ์ธ ์ค์
๋๋ค.
๋์์ด๋๊ธฐ๋ฅผ ๋ฐ๋๋๋ค
๋ฌธ์๋์ด๋ฅผ ์ฐธ์กฐํ์ง ์๋๋ก ์ ๋ฐ์ดํธํด์ผํฉ๋๋ค.
'IReferenceProvider'๋ฅผ ๊ฒํ ํ๋๋ฐ ๋์์ด๋์ง ์์ต๋๋ค. 'IMarkupExtension'๋ด์์ 'TargetObject'์ ๋ถ๋ชจ ๊ณ์ธต์ ์๋ณ ํ ์ ์์ด์ผํฉ๋๋ค. ์ด๋ฆ์ด ์๋ type'e ์์์ ๊ธฐ๋ฐ์ผ๋ก ์ํ๋ ์ ํ์ ๊ฒ์ ํ ์ ์๋๋ก ๋ชจ๋ ์ ํ์ ๋ํ ์ก์ธ์ค ๊ถํ์ด ํ์ํฉ๋๋ค. ์ด๋ค ์์ด๋์ด?
@StephaneDelcroix ๋ถ๋ชจ ๊ฐ์ฒด๋ฅผ ํ๊ฐํด์ผํ๋ ๋ช ๊ฐ์ง ์๋๋ฆฌ์ค๋ ์์ต๋๋ค ...์ด API๋ฅผ ์ด๋ฉด ์ ๋ง ์ข์ ๊ฒ์ ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
@StephaneDelcroix ๋ถ๋ชจ ๊ฐ์ฒด๋ฅผ ํ๊ฐํด์ผํ๋ ๋ช ๊ฐ์ง ์๋๋ฆฌ์ค๋ ์์ต๋๋ค ...์ด API๋ฅผ ์ด๋ฉด ์ ๋ง ์ข์ ๊ฒ์ ๋๋ค.