c# - 如何访问另一个用户控件实例中的用户控件实例?
问题描述
我有两个用户控件:播放器和播放列表。
Player.cs
namespace Music_Player
{
public partial class Player : UserControl
{
public int currentSongIndex = 0;
public WindowsMediaPlayer player = new WindowsMediaPlayer();
public Player()
{
InitializeComponent();
player.settings.autoStart = false;
}
private void playButton_Click(object sender, EventArgs e)
{
if (playButton.Text == "Play")
{
Play();
}
else
{
Pause();
}
}
public void Play()
{
if (CheckSongs()) { return; }
playButton.Text = "Pause";
player.controls.play();
}
...
Playlist.cs
namespace Music_Player
{
public partial class Playlist : UserControl
{
public Playlist()
{
InitializeComponent();
}
private void playlistTitle_Click(object sender, EventArgs e)
{
player.Play(); // THIS IS WHERE I WANT TO USE THE player INSTANCE OF Player()
}
...
UserControls 都是我的表单中的另一个 UC 的子级。
如何player
在播放列表中使用哪个是 Player() 的实例?
解决方案
您可能希望以控件所在的形式而不是控件本身来处理事件。该表单将引用这两个控件以及它们所控制的任何内容。那就是事情应该联系起来的地方。
推荐阅读
- python - 熊猫数据透视表,排序值
- unit-testing - 在具有 FreeRTOS 依赖性的项目中进行单元测试
- python-3.x - _pickle.UnpicklingError:pickle 数据被截断第 27 行 Server.py
- swift - 命令 Ld 失败,退出代码为非零
- javascript - 如何将“新”元素/对象添加到 javascript 列表中?
- reactjs - 如何摆脱useEffect中的依赖错误?
- java - In Processing - 一个声音文件贯穿整个动画,但只有一个类对象与声音交互
- r - 由于 is_corpus_df(corpus) 中的错误导致 Bind_tf_idf 错误:ncol(corpus) >= 2 is not TRUE
- python - 具有恒定频率的python wordcloud
- asp.net - 在 Web 窗体中使用新密码验证器播种 ASP.NET 身份的正确方法