You need a header that is like a middle man for everything:
Code:
local header = CreateFrame("Frame", nil, nil, "SecureHandlerStateTemplate")
MyTestXD = CreateFrame("Button", "MyTestXD", nil, "SecureHandlerClickTemplate")
header:SetFrameRef("Test", MyTestXD)
local preClick = [[
local Test = control:GetFrameRef("Test")
Test:SetAttribute("UnitID", self:GetAttribute("unit"))
print("Unit targeted saved:", Test:GetAttribute("UnitID"))
]]
header:WrapScript(CompactRaidFrame1, "OnClick", preClick)