91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ContextMenuStrip控件 位置 傳值

發布時間:2020-07-18 14:04:05 來源:網絡 閱讀:2050 作者:起名好難 欄目:編程語言

   對于這個控件,我們常用的方式是是直接把他從屬控件的屬性ContextMenuStrip設置為contextMenuStrip1可以保證右鍵菜單位置的正確性。

   然而有時候我們為了在一個容器特定的位置出現右鍵菜單,就需要設置ContextMenuStrip的位置了;

S1.聲明一個右鍵菜單控件;

S2.添加右鍵菜單的內容;

S3.設定使右鍵菜單跟隨鼠標點擊位置出現。關鍵的是其中的位置坐標轉換;oView.PointToScreen(e.Location);oView這個對象要選正確,就是要出現右鍵的容器,用他的坐標轉化方法來得到右鍵出現的位置;

這樣可以保證右鍵菜單出現位置正確了。

附一點代碼:


ContextMenuStrip cms = new ContextMenuStrip();
 cms.Items.Add("屬性設置");
//坐標轉化保證右鍵菜單出現在點擊的位置
Point p = oView.PointToScreen(e.Location);
cms.Show(p);
                                                                                                                                                         
cms.Items[0].Tag = oView;
cms.Items[0].Click += ContextMenuStrip_Click;



另外在做這個開發時,我還遇到了另一個問題,我的右鍵是設置一個對象的屬性,然而在這個Click事件中獲取不到這個對象怎么辦?我試著用Tag屬性將需要的值傳遞到單擊事件中進行處理,結果還可以。

//右鍵事件
        private void ContextMenuStrip_Click(object sender, EventArgs e)
        {
            XX view = ((ToolStripDropDownItem)(sender)).Tag as XX;
}


還沒有完全吃透,僅供參考,若有更好方法望留言告知;謝謝

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

米林县| 高雄市| 建德市| 青铜峡市| 怀仁县| 灵丘县| 建宁县| 阳曲县| 明水县| 黔南| 顺义区| 八宿县| 蒲江县| 建始县| 株洲市| 合山市| 张家口市| 武山县| 白水县| 德兴市| 湘西| 博罗县| 龙岩市| 荔波县| 安泽县| 湟源县| 外汇| 镇江市| 临沂市| 松潘县| 镇沅| 凤山市| 灵丘县| 泰州市| 鄂伦春自治旗| 曲水县| 汉阴县| 乌海市| 山东| 阳山县| 呼玛县|