C# 使用自己的“函数”将控件传递给函数;点击";事件

C# 使用自己的“函数”将控件传递给函数;点击";事件,c#,event-handling,controls,C#,Event Handling,Controls,我曾经制作过一个自定义的星级控件,我想使用它的点击事件将它传递给一个函数 那么比如说, private ctlRating_Click(object sender, EventArgs e) { ChangeOutline(???); } private ChangeOutline(??? control) { if(control.SelectedStar > 0) { control.OutlineThickness = 0; }

我曾经制作过一个自定义的星级控件,我想使用它的
点击
事件将它传递给一个函数

那么比如说,

private ctlRating_Click(object sender, EventArgs e) {
    ChangeOutline(???);
}

private ChangeOutline(??? control) {
     if(control.SelectedStar > 0) {
         control.OutlineThickness = 0;
     }
     else {
         control.OutlineThickness = 1;
     }
}
我试着使用
this
关键字,但这显然只是指向表单本身。我也尝试过使用
发送器
,但这会将其视为一个没有任何方法或值的对象

除了使用控件的名称(这可能更简单,但我想知道是否可以这样做)之外,是否还可以这样做

private ctlRating_Click(object sender, EventArgs e) {
    ChangeOutline(sender as StarRatingControl);
}

private ChangeOutline(StarRatingControl control) {
    if(control.SelectedStar > 0) {
        control.OutlineThickness = 0;
    }
    else {
        control.OutlineThickness = 1;
    }
}