Microsoft MVP성태의 닷넷 이야기
C# winform(framework) tabcontrol 에서 button 함수 관련 질문 [링크 복사], [링크+제목 복사]
조회: 7916
글쓴 사람
달려라라이언
홈페이지
첨부 파일

tabcontrol 을 이용한 프로그래밍 중 궁금 한 점이 있어 문의 드립니다.

1.(첨부파일) 다른 탭페이지에 있는 버튼을 performclick으로 실행이 되지 않고 넘어 갑니다. 이유가 궁금 합니다.
  첨부파일에서 탭페이지 타이머 버튼은 초를 세는 버튼이고 , add 버튼은 라벨에 표시되는 숫자를 올리는 버튼입니다. add 2는 다른 탭페이지에서 라벨 숫자를 올리는 버튼 입니다.


2. 탭페이지를 이동 하다 보면 버튼 클릭에 설정 되어있던 함수들이 실효 되어 없어지는 경우가 있습니다.
   지금은 프로젝트가 간단하여 실수가 없겠지만, 이후를 위해 이유를 알고 싶습니다.








[최초 등록일: ]
[최종 수정일: 12/2/2019]


비밀번호

댓글 작성자
 



2019-12-02 08시34분
1. PerformClick의 문서를 보면,

IButtonControl.PerformClick Method
; https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.ibuttoncontrol.performclick

다음과 같은 설명이 나옵니다.

"This method is called for the button that has focus, or for the default button (if no other button has focus) when the user presses the ENTER key. This method is also called when the user presses the ESC key if the button is set as the cancel button."

위와 같은 조건은 코드 상에서 "CanSelect" 속성이 true인가를 판단하는 것으로 구현되고 있습니다. 즉, CanSelect가 false인 "보여지지 않은 Tab 페이지"의 버튼은 PerformClick의 대상이 아닙니다.

2. "실효되어 없어지는 경우"가 어떤 경우를 말씀하시는 건가요?
정성태
2019-12-03 03시17분
[달려라라이언] 답변 감사드립니다.
주의 해서 사용 하도록 하여야 겠습니다. 버튼 클릭 후 실행 되는 모든 건 함수로 묶어서 관리 해야겠습니다.

2. 실효 된다는 표현은 버트의 속성 중 이벤트 창에서 Click 이벤트에 묶어?(명시) 되어 있던 함수 가 없어 지더라구요 ...

왜 그런 것인지 모르겠습니다.
[guest]
2019-12-03 06시14분
(Click에 상관없이) 이벤트가 해제되었다는 것은 명시적인 해제를 하지 않는 한 없습니다. 또는 버튼을 새로 생성했는데 실수로 이벤트 구독 코드를 누락시켰다거나 하거나... 재현되는 최소한의 코드가 있으면 올려주세요.
정성태

1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5781List맨1/5/20233786List.Add("newobj") 속도는 빠른 편인지요? [11]
5780임세1/3/20234403C# 프로그래밍 10 책 구매한 사람입니다. 3부 자료는 어디서 다운 받을 수 있나요? [4]
5779이건우1/2/20233271안녕하십니까 루프안에서 메세지처리에 관하여 질문드립니다! [2]
5778이건우12/30/20224533안녕하세요 c#에서 dll참조 관련 질문드립니다. [4]
5777감사합니...12/29/20223553UI Thread에 Invoke 처리관련 궁금합니다. [3]
5776pdf맨12/28/20223346C# MouseUp Event + pdf [10]
5775민성12/28/20223131안녕하세요 Class 관련해서 예외처리를 하나로 받아낼수 있는 방법 [1]
5774중급12/27/20223927중급개발자란 어느 수준인지요? [4]
5773김영식12/26/20223455c# 압축파일 읽어 올 때 BinaryRead 한글 처리 문제 [1]
5772눈송이12/26/20223586Excel VSTO 는 왜 Net Core, Net 5, 6 버전을 사용하지 않나요? [2]
5771김훈12/26/20223690c# .net client application 망분리(내부망,외부망) 환경에서 의문의 외부사이트 호출 대기 [2]
5770lsh12/26/20223296클라우디움안에 있는 파일을 File.Copy 하고싶은데 코드로는 접근을 못하나요? [1]
5769울타리12/20/20223333Active Directory 2012R2 2016 또는 2019 마이그렝션 문의 드립니다. [1]
5768c++12/14/20224086Thread를 사용한 C++ DLL에 관련된 질문입니다. [6]파일 다운로드2
5767민성12/9/20223436안녕하세요 ashx로 화일을 저장하고 화일명을 리턴하는데요 [1]
5766김명훈12/9/20223583웹브라우저에서 묻지 않고 바로 다운로드 [2]
5765hong12/1/20223823Winform(.Net6) 클라이언트에서 SignalR Core 웹서버에 접속시 인증서 문제 [3]파일 다운로드1
5764요한11/30/20224032c++ 동일한 객체인지 비교 방법문의 [2]
5763고필석11/30/20223544시작하자마자 비정상 종료하는 프로세스에 대한 문제 해결 조언 요청 드립니다. [3]
5762흰털너부리11/30/20223532wpf mvvm ui update 로딩중 표시 [1]
5761민성11/29/20223432죄송하지만 한가지만 더 여쭈어 보겠습니다 [1]
5760민성11/29/20223354안녕하세요 [2]
5759문정환11/28/20223705c# socket 통신할때 빅엔디언으로 바꿔줘야 하나요? [1]
5758라떼11/28/20224899Linux 에서 winform UI 어플리케이션 실행하기 [3]
5757흰털너부리11/25/20223847asp.net core EF AddDbContext,AddDbContextFactory 차이점 알려주세요 [1]
5756흰털너부리11/25/20223415asp.net core web api에서 json 특정 property 무시하는 방법 문의 드립니다. System.Text.Json 사용중입니다. [1]
1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...