이것은 부분적으로 호언 장담이며 부분적으로 진정한 호기심입니다. 누구도 왜 System.Windows.Forms.DataObject's SetText(String) 메서드가 인수로 빈 문자열을 허용하지 않는지 알고 있습니까? ArgumentNullException을 throw합니다 (실제로 null이 아니더라도).DataObject.SetText (String)에서 빈 문자열을 허용하지 않는 이유는 무엇입니까?
null 값을 허용하지 않는다는 것을 이해할 수 있지만 빈 문자열을 허용하지 않는 것은 매우 드문 것처럼 보입니다. 여기에 누락 된 것이 있습니까? 아니면 API 디자이너가 임의로 결정한 것입니까?
빈 문자열에서 실패 할 가능성이있는 COM 기능을 둘러싼 래퍼입니다. – Oded
'GetText' 메서드 인'SetText'의 사본이'String.Empty'를 반환하여 데이터 객체가 UnicodeText 형식의 데이터를 가지고 있지 않음을 나타 내기 때문입니다. 본질적으로'String.Empty'는이 경우'null'의 역할을하기 때문에'SetText'가'String.Empty'를 받아들이지 않게해야합니다. – dasblinkenlight