俺要做一个有关课件编辑工具,碰到一个问题:界面上有三个元素,就是windows media player控件、ppt播放页面、目录显示界面,必须要互相控制。打开一个录制好的课件,用户如果操作windows media player控件,则ppt播放页面,目录显示界面要实现准确定位;反之,操作其它两个元素时,其它的也必须做出反应。通俗地说,一个元素要控制另两个元素。windows media player里面响应脚本命令(ScriptCommand)函数,ppt响应SlideShowNext事件,目录显示界面是一个ListView,响应SelectedindexChanged。
我先前想到在一个元素的事件响应函数中响应另外两个函数,后来发现其实不必,否则太复杂了,因为这会形成连环反应。ListView的项选择完全可以通过模拟实现。就是不用Index[i].Selected = true这样子,只需要将被选择的项设置不一样的颜色就行了。