문제

MSHTML을 사용하여 HTML을 편집하기 위해 .NET 양식 컨트롤을 작성하고 있습니다. 나는 몇 가지 사용자 정의 요소를 만들고 있으며 효과적으로 읽기 전용으로 만들고 싶습니다. 나는 해당 요소의 어느 곳에서나 초점을 맞추면 전체 요소에 초점을 맞출 수 있다고 생각했지만 htmlelement.focus ()는 전체 요소를 선택하지 않으며 커서의 입력을 캡처 할 수없는 것 같습니다. .

또 다른 옵션은 요소의 텍스트가 변경 될 때마다 이벤트를 제기하는 것입니다 (키 다운에서는 예상)이지만 해당 이벤트를 발사 할 수는 없습니다. 이벤트 행동에 대한 나의 기대가 왜 잘못되었거나 구현에 대한 대체 제안인지에 대한 아이디어가 있습니까?

도움이 되었습니까?

해결책

속성 설정을 찾았습니다.

contentEditable=false

원하는 행동을 초래했습니다.

다른 팁

사용자 입력 컨트롤에 Readonly 동작을 적용하려는 경우 해당 컨트롤의 @ReadOnly 속성을 사용해 볼 수 있습니다. 그렇지 않으면 적절한 UI 이벤트 (Keydown, Mousedown)에 대한 이벤트 리스너를 추가하고 기본 동작을 방지 할 수 있습니다 (Return False 또는 Event.ReturnValue = False). 사용자 정의 이벤트 파견은 실제로 그렇게 할 수 있습니다. IE에 알려진 이벤트 이름을 사용하십시오. 또 다른 힌트는 다음과 같습니다. OnChange 이벤트 핸들러를 등록하고 DefaultValue (입력 컨트롤의 속성) 값으로 제어 값을 되돌립니다.

아이디어가 도움이되기를 바랍니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top